【问题标题】:Python script with arguments from command line without typing Python带有命令行参数的 Python 脚本,无需键入 Python
【发布时间】:2018-10-24 15:40:08
【问题描述】:

不喜欢这个问题:Calling a python script from command line without typing "python" first

我有一个名为 argparse_test.py 的 Python 脚本。我把它放在我的 Windows 10 机器上的系统路径中,这样我就可以从任何文件夹中调用它,只需键入“arparse_test.py”,然后输入参数。

如果我调用,该参数有效

python argparse_test.py -w

但是当我调用时它不识别参数

argparse_test.py -w

有没有办法让它工作?

脚本在这里:

import argparse
import time
if __name__=='__main__':
    # Command line arguments
    parser = argparse.ArgumentParser()
    parser.add_argument("-w", "--work", action="store_true", help="Make it work")
    args = parser.parse_args()
    if args.work:
        print "It works"
    else:
        print "It doesn't work"
    time.sleep(5)

【问题讨论】:

  • 你的问题是?
  • How to execute Python scripts in Windows? 的可能重复这个问题是关于被剥夺的论点,就像你的一样。
  • @zwer 我在完成之前发布。我的错。
  • 我无法重现您的问题,提供的脚本应该可以工作(至少它适用于 CPython 2.7.11)。
  • 我认为问题在于权限和文件关联的一些奇怪的东西。我不是这台计算机的管理员。 “可能的重复”可能有有用的答案。

标签: python windows powershell command-line


【解决方案1】:

您需要将.py 添加到PATHEXT 环境变量中。在 PowerShell 中,执行: $ENV:PATHEXT += ";.py"

【讨论】:

  • 简单准确!
  • 后续,我在 CMD (SET PATHEXT=%PATHEXT%;.py) 中尝试了相应的命令,但这似乎没有帮助。有什么想法吗?
猜你喜欢
  • 2012-05-26
  • 2023-02-06
  • 2015-05-18
  • 2018-10-14
  • 2012-01-24
  • 1970-01-01
  • 2014-08-31
  • 1970-01-01
  • 2021-10-21
相关资源
最近更新 更多