我正在尝试通过参数将文件列表传递给我的python脚本:
python script.py -o aaa -s bbb "filename.txt" "filename2.txt" "file name3.txt"
不幸的是,ArgumentParser忽略了引号,没有给出3个文件的列表,而是给了我4个元素的列表,如下所示:
1) "filename.txt"
2) "filename2.txt"
3) "file
4) name3.txt"
它完全忽略引号。如何使其与引号一起使用?
很难看到您正在使用什么或任何代码。您的外壳程序[[may会干扰,您可能需要使用\
来转义空格。
python script.py -o a -f "file1.txt" "file\ 2.csv"
sys.argv[]
,您可以轻松地用引号传递文件参数,例如当您需要带有空格的文件或argv时:python script.py "myFile.txt" "otherFile.jpeg"
尝试以下简单代码以了解:import sys
for n, p in enumerate(sys.argv):
print("Parameter: %d = %s") % (n, p))`
您可以看到第一个argv是您正在运行的文件名。