JFileChooser для Python?

Мне было интересно, есть ли что-то похожее на Java JFileChooser для Python?

JFileChooser - это графический интерфейс для выбора файла.

Желательно то, что уже есть с Python. Может быть, с Ткинтером.

Быстрое объяснение того, что такое JFileChooser, может помочь получить более точные ответы.

Harley Holcombe 12.01.2009 02:07
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
4
1
1 955
6
Перейти к ответу Данный вопрос помечен как решенный

Ответы 6

Это будет зависеть от вашего набора инструментов для работы с окнами. wxWidgets предоставляет wxFileDialog.

Спасибо, Хэнк, я разберусь. :)

Nope 12.01.2009 02:15

wxPython (www.wxpython.org) предоставляет класс wx.FileDialog, который предоставит вам собственный диалог выбора файла на любой из поддерживаемых платформ (Mac, Linux или Windows).

Спасибо, WAyne. Думаю, Хэнк опередил тебя;)

Nope 12.01.2009 02:16

Может быть, вы хотели бы взглянуть на Jython.

Самый простой способ, который я когда-либо находил (используя PyGTK и киви):

from kiwi.ui.dialogs import open as open_dialog

chosen_path = open_dialog('Select a file', folder='/start/folder')

if chosen_path is not None:
    # do something ...
Ответ принят как подходящий

Для чего-то, что не требует wxPython и придерживается стандартных библиотек Python, вы можете использовать метод tkFileDialog.askopenfilename ():

#!/usr/bin/python

from Tkinter import *
from tkFileDialog import askopenfilename

root = Tk()
root.withdraw()
print askopenfilename()

Возможно, это сработало для python2. Но для python3 вам нужен ответ А. Л. Стрина.

erik 12.06.2020 13:31

Для python 3 вам нужен tkinter.filedialog и все, что с ним связано. Вот короткая программа, которая открывается и затем распечатывает файл TXT, выбранный пользователем через askopenfilename:

from tkinter import *
from tkinter.filedialog import askopenfilename

root = Tk()
root.withdraw()
root.update()
pathString = askopenfilename(filetypes=[("Text files","*.txt")])
if pathString:
    openFile = open(pathString, 'r')
    fileString = openFile.read()
    print(fileString)
root.destroy()

Вывод - это то, что находится в выбранном файле.

Для python3 вам необходимо проверить определение pathString (не для пустой строки): if pathString: (см. Этот ответ stackoverflow.com/a/47067803/1908115)

erik 12.06.2020 13:44

Другие вопросы по теме