Я хотел бы получить путь к файлу в качестве входных данных в моем консольном приложении Python.
В настоящее время я могу запрашивать только полный путь в качестве ввода в консоли.
Есть ли способ запустить простой пользовательский интерфейс, в котором пользователи могут выбирать файл вместо того, чтобы вводить полный путь?
python
user-interface
dialog
filechooser
Мустафа Зенгин
источник
источник
Версия Python 3.x ответа Etaoin для полноты:
источник
import tkinter
+tkinter.Tk().withdraw()
.С EasyGui (документация, созданная pydoc и epydoc для версии 0.96):
Установить:
Демо-версия:
источник
invalid syntax
об ошибкеprint easygui.diropenbox()
?В Python 2 используйте
tkFileDialog
модуль.В Python 3 используйте
tkinter.filedialog
модуль.источник
Еще один вариант - Zenity: http://freecode.com/projects/zenity .
У меня была ситуация, когда я разрабатывал серверное приложение Python (без компонента GUI) и, следовательно, не хотел вводить зависимость от каких-либо инструментов графического интерфейса Python, но я хотел, чтобы некоторые из моих сценариев отладки параметризовались входными файлами, и я хотел визуально запрашивать у пользователя файл, если он не указал его в командной строке. Зенити идеально подошел. Для этого вызовите zenity --file-selection с помощью модуля subprocess и запишите stdout. Конечно, это решение не зависит от Python.
Zenity поддерживает несколько платформ и уже был установлен на наших серверах разработчиков, поэтому он упростил нашу отладку / разработку, не создавая нежелательных зависимостей.
источник
Я получил гораздо лучшие результаты с wxPython, чем с tkinter, как это предлагается в этом ответе на более поздний повторяющийся вопрос:
https://stackoverflow.com/a/9319832
Версия wxPython создавала диалоговое окно файла, которое выглядело так же, как диалоговое окно открытия файла практически из любого другого приложения в моей установке OpenSUSE Tumbleweed с рабочим столом xfce, тогда как tkinter создавал что-то тесное и трудное для чтения с незнакомым интерфейсом с боковой прокруткой.
источник