2017-01-30 3 views
-1

У меня есть несколько скриптов, которые принимают в качестве входных один или несколько путей как аргумент. r или n добавлен в список аргументов из Python

Скрипт выполняется так: myScript.py D: \ Folder1, E: \ другие данные \ Files

В сценарии, я разделить аргументы пути в запятой и я прочитал пути.

Проблема в том, что Python добавляет \ r в конец каждого пути без причины. Итак, скрипт пытается прочитать D: \ Folder1 \ r и E: \ OtherData \ Files \ r.

Почему это и как я могу его решить?

+1

Я никогда не видел, чтобы Python добавлял посторонние, которые не должны были быть там без причины. Пожалуйста, добавьте [mcve], чтобы мы могли видеть, что вы имеете в виду. – TigerhawkT3

+0

Запятая (',') является допустимым символом в имени файла. Я советую отделить имя файла пробелом и поместить их в кавычки, если это необходимо. Это сделает их отдельными элементами в 'sys.argv'. –

ответ

0

Существует много способов, например, один из них.

Замены соответствующей проблемной строки с пустой строкой:

paths= [x.rstrip() for x in paths_list] 

Метод rstrip() возвращает копию строки, в которой все символы были отделенной от конца (символов по умолчанию пробельных) строки ,