我的路径中有一些方便的 python 脚本,我想通过直接调用它们来运行它们,例如myscript.py argument1. 但参数不会出现在sys.argv.
测试.py
#!python3.5
import sys
print(sys.argv)
Run Code Online (Sandbox Code Playgroud)
因此,当我直接调用这个小脚本时,我无法通过 访问给定的参数sys.argv。
c:\Users\MrLeeh\bin>test.py hello
['C:\\Users\\MrLeeh\\bin\\test.py']
Run Code Online (Sandbox Code Playgroud)
当我使用python命令显式调用它时,我可以访问我的参数。
c:\Users\MrLeeh\bin>python test.py hello
['C:\\Users\\MrLeeh\\bin\\test.py', 'hello']
Run Code Online (Sandbox Code Playgroud)
我问自己这样做的原因是什么,以及在使用直接调用时如何访问参数。我的 python 文件与py.exe.
小智 6
也许您错过了一些注册表配置。
HKEY_CLASSES_ROOT\Python.File\shell\open\command 中保存了一个注册表:
[HKEY_CLASSES_ROOT\Applications\python.exe\shell\open\command]
@="\"C:\\Python27\\python.exe\" \"%1\" %*"
Run Code Online (Sandbox Code Playgroud)
上面的注册表设置添加了“%*”以将所有参数传递给 python.exe
| 归档时间: |
|
| 查看次数: |
2450 次 |
| 最近记录: |