You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerShell终端运行Python指定函数?我的代码缺什么?

问题分析与解决

为什么python -m my_file func2没有输出?

你当前的脚本仅定义了函数,但缺少解析命令行参数并触发对应函数执行的逻辑。当用-m参数运行模块时,Python会执行脚本,但不会自动识别你传入的func2参数并调用对应函数。

修改后的脚本示例

修改my_file.py,添加参数处理和函数调用逻辑:

import sys

def func1():
    print('first function')

def func2():
    print('second function')

if __name__ == '__main__':
    # 检查是否传入目标函数名
    if len(sys.argv) < 2:
        print("请指定要运行的函数名,例如:python -m my_file func2")
        sys.exit(1)
    
    target_func = sys.argv[1]
    # 验证函数存在并调用
    if target_func in globals() and callable(globals()[target_func]):
        globals()[target_func]()
    else:
        print(f"不存在名为 {target_func} 的函数")

运行验证

在PowerShell执行:

python -m my_file func2

此时会输出:second function

其他终端的运行方式

核心命令跨终端通用,仅部分细节有区别:

  • Windows CMD:直接输入python -m my_file func2(Python路径已配置时),多版本环境可改用py -m my_file func2
  • Linux/macOS终端:输入python3 -m my_file func2(系统默认Python2时,用python3指定版本)

额外提示

  • 若脚本不在当前工作目录,需确保它在Python模块搜索路径中,或先切换到脚本所在目录再执行命令
  • 也可直接用python my_file.py func2运行(无需-m参数),修改后的脚本同样支持该方式

内容的提问来源于stack exchange,提问作者murd0x

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 09:44:53