2016-02-27 3 views
1

Ниже мой питон скриптArgparse вход с пробелами и управляющие символы

import argparse 
parser = argparse.ArgumentParser() 
parser.add_argument('query', nargs='*') 
args = parser.parse_args() 
print args.query 

Если я рому это с аргументом, как:

python script.py use of \n 

Это дает мне следующий вывод:

['use', 'of', 'n'] 

Желание иметь

['use', 'of', '\\n'] 

и так далее.

+1

I get '['use', 'of', '\\ n']'. –

+0

ой! что будет делать. Я исправил вопрос. – dorado

+0

В основном я присоединяюсь к строке с пробелами, поэтому я хочу ее как есть. – dorado

ответ

0

Вы должны получать это поведение в linux, где '\' является символом escape оболочки. Он используется для продолжения длинной команды в следующей строке. Таким образом, вы можете написать длинную команду в многострочной линии, используя символ «\». При запуске

python script.py use of \n 

оболочки взять '\ п', как два символа '\' а побег символ и 'п', Решение должно быть

python script.py use of \\n 

или

python script.py use of '\n' 
+0

любая идея, как решить эту проблему? – dorado

+0

@dorado Пожалуйста, проверьте обновленный ответ – AlokThakur

+0

Это не решит проблему. Как насчет ввода, например: 'ma'am it'll' – dorado