处理文件名时解析输入
Parse input when dealing with file names
当输入是路径列表时,如何解析输入?
file_in = input("Insert paths: ") # foo.jpg "C:\Program Files\bar.jpg"
print(file_in) # foo.jpg "C:\Program Files\bar.jpg"
我正在寻找一种干净的方法来获取列表 ['foo.jpg', 'C:\Program Files\bar.jpg']
中的输入 foo.jpg "C:\Program Files\bar.jpg"
(请注意第二条路径中的引号,因为 Program Files
中的 space =]).
是否有类似 argparse 但 input()
的东西?
最好的处理方法是什么?
这是你想要的:
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"
输出:
['foo.jpg', 'C:\Program Files\bar.jpg']
当输入是路径列表时,如何解析输入?
file_in = input("Insert paths: ") # foo.jpg "C:\Program Files\bar.jpg"
print(file_in) # foo.jpg "C:\Program Files\bar.jpg"
我正在寻找一种干净的方法来获取列表 ['foo.jpg', 'C:\Program Files\bar.jpg']
中的输入 foo.jpg "C:\Program Files\bar.jpg"
(请注意第二条路径中的引号,因为 Program Files
中的 space =]).
是否有类似 argparse 但 input()
的东西?
最好的处理方法是什么?
这是你想要的:
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"
输出:
['foo.jpg', 'C:\Program Files\bar.jpg']