如何在PowerShell中运行带参数的Python函数脚本
解决方法
要实现用PowerShell一行命令运行带参数的脚本,你需要做两个关键调整:修改脚本以接收命令行参数并调用main函数,以及在PowerShell命令中正确传递参数。
1. 调整你的Python脚本
首先,你需要在脚本中添加逻辑来读取命令行传入的参数,并调用你的main函数。最简单的方式是使用Python内置的sys模块:
import sys def main(argument1, argument2): def Hello(argument1, argument2): print("Hi " + argument1 + " and " + argument2 + "!") # 别忘了调用内部的Hello函数(如果需要执行这段逻辑的话) Hello(argument1, argument2) # 后续其他脚本内容... # 当脚本直接被运行时,读取命令行参数并触发main函数 if __name__ == "__main__": # sys.argv[0]是脚本本身的路径,实际传入的参数从索引1开始 arg1 = sys.argv[1] arg2 = sys.argv[2] main(arg1, arg2)
注意:如果你的参数值包含空格,记得在PowerShell中用引号包裹对应的参数。
2. PowerShell中的运行命令
现在你可以直接在PowerShell中执行命令,在脚本路径后跟上要传递的参数即可:
C:\Users\AAA\AppData\Local\Continuum\Anaconda3\pythonw.exe "X:\Data\_Private\Data\test.py" "Alice" "Bob"
额外提示
- 如果你需要查看脚本的
print输出,建议暂时把pythonw.exe换成python.exe——因为pythonw是无窗口运行模式,不会弹出控制台显示输出内容。 - 如果后续需要更复杂的参数处理(比如可选参数、默认值、参数说明),可以试试Python的
argparse模块,它能提供更灵活的参数解析能力。
内容的提问来源于stack exchange,提问作者Aertonas
相关产品推荐
相关产品推荐

