Python Script,args没有转移到Script
我有一个名为“
gcc_opt.pyw”的
Python脚本,我将其目录包含在Windows PATH环境变量中.
但是没有一个命令行参数传递给脚本.打印出sys.argv告诉我argv-list中只有文件名. 这个命令: gcc_opt HelloWorld.c -o HelloWorld.exe -shared 结果是 ["C:Scriptsgcc_opt.pyw"] 你能告诉我为什么没有其他论点吗? 我不知道它是否重要,但是我已经将python.exe设置为执行.pyw文件的默认程序,因为我没有看到使用pythonw.exe的任何打印(为什么会这样). 解决方法
你没有获得参数的原因是因为你破坏了.py
关联,这样你可以双击这些文件在NotePad中打开它们, 然后打破.pyw协会来做.py应该做的事情. 简而言之,您忘记在Python.exe命令的末尾包含%* ASSOC和FTYPE命令用于显示关联和文件类型,即 C:test>assoc .py .py=Python.File C:test>assoc .pyw .pyw=Python.NoConFile C:test>ftype python.file python.file="C:Python27python.exe" "%1" %* C:test>ftype python.noconfile python.noconfile="C:Python27pythonw.exe" "%1" %* 正常的.py关联运行python.exe和控制台窗口,以便您 正常的.pyw关联运行pythonw.exe而没有控制台窗口. 您可以在每个命令行的末尾看到,有一个%*.这就是发送的内容 当您尝试在命令行运行python文件而不键入它 首先,PATHEXT环境变量用于查找匹配的扩展名. 然后查找.PYW文件的关联,找到文件类型 然后,系统从找到的命令模板创建实际命令行 "[your-python-path]python.exe" "%1" 这告诉它只使用第一个参数,你的python脚本名称 快速解决方法是将%*添加到该命令的末尾. CORRECT解决方案是将事情恢复到正确的关联和打开Python文件,通过更标准的方法进行编辑(将图标拖放到NotePad,或者右键单击并使用NotePad编辑). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |