Разбор ввода при работе с именами файлов - PullRequest
0 голосов
/ 12 октября 2018

Как я могу проанализировать ввод, когда он представляет собой список путей?

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).

Есть ли что-то вроде argparse , но для input() s?
Каков наилучший способ справиться с этим

1 Ответ

0 голосов
/ 12 октября 2018

Вот что вы хотите:

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']
...