如果输入是路径列表,我如何解析输入?
file_in = input("Insert paths: ") # foo.jpg "C:\Program Files\bar.jpg"
print(file_in) # foo.jpg "C:\Program Files\bar.jpg"
Run Code Online (Sandbox Code Playgroud)
我正在寻找一种干净的方式来获取foo.jpg "C:\Program Files\bar.jpg"列表中的输入['foo.jpg', 'C:\Program Files\bar.jpg'](请注意第二个路径中的引号,因为其中有空格Program Files).
有什么像argparse但是对于input()s?
处理它的最佳方法是什么?
这就是你想要的:
import shlex
file_in = input("Insert paths: ") # foo.jpg "C:\Program Files\bar.jpg"
print(shlex.split(file_in)) # foo.jpg "C:\Program Files\bar.jpg"
Run Code Online (Sandbox Code Playgroud)
输出:
['foo.jpg', 'C:\\Program Files\\bar.jpg']
Run Code Online (Sandbox Code Playgroud)