2014-11-26 2 views
-1

Я хотел бы запустить скрипт python из enthought canopy v1.5.0.2717, либо в Mac или Windows, и предоставить абсолютный путь к файлу в качестве аргумента, используя запустить диалог конфигурации.Запустить скрипт python из пологого навеса с абсолютным путем в качестве аргумента

В конфигурации запуска я ставлю аргумент (например):

'/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' 

Как я могу достичь того же результата с помощью Навес?

+0

использование os.path.sep для идентификации текущего Seperator файла в под управлением ОС –

+0

Что вы пробовали, какое сообщение об ошибке вы видите, почему вы не размещать код? –

+0

@ShawnZhang Я больше думал о пространствах. Я знаю, и я предполагаю, что пользователь знает, какой разделитель файлов использовать. Плюс «\» является специальным символом в строке python, следует ли вводить его как «\\» в пути? И как я также представляю пробелы в пути? – labjunky

ответ

0

Оболочка сгруппирует все в двойных кавычках в один параметр, а не одинарные кавычки.

>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'] 

 Смежные вопросы

  • Нет связанных вопросов^_^