我想在enthought canopy v1.5.0.2717中运行python脚本,无论是在mac还是windows中,并使用运行配置对话框提供绝对文件路径作为参数。
在运行配置中我放了一个参数(例如):
'/Users/dir/Data/University stuff/CQT/Data/ScriptRunFolder/testingPythonRfRamp.xml'
我的脚本包含以下代码:
import sys
print sys.argv[1]
然后我点击"运行"打印的字符串是:
'/Users/dir/Data/University'
另一个例子是使用路径:
'C:\User\Program files\test.txt'
并打印
'C:UserProgram'
看起来它会在空格处拆分路径,并删除" \"。
从命令行运行脚本,如:
$python myScript.py '/Users/dir/Data/University stuff/CQT/Data/ScriptRunFolder/testingPythonRfRamp.xml'
打印出正确的字符串:
'/Users/dir/Data/University stuff/CQT/Data/ScriptRunFolder/testingPythonRfRamp.xml'
如何使用Canopy获得相同的结果?
答案 0 :(得分:0)
shell会将双引号内的所有内容分组为单个参数,而不是单引号。
>type showme.py
import sys
print(sys.argv[1:])
>python showme.py 'i am sad'
["'i", 'am', "sad'"]
>python showme.py "i am happy"
['i am happy']