QtWidgets.QFileDialog.getOpenFileName возвращает кортеж

Я недавно обновился до новой версии Qt5 для Python. При этом мне пришлось изменить свой код в соответствии с некоторыми заметными изменениями, которые произошли. Я хотел получить некоторое представление об этой строке кода, которую я создал. Это похоже на грязный способ решения проблемы получения string вместо tuple из функции. (Обратите внимание [0] в конце строки)

filename = QtWidgets.QFileDialog.getOpenFileName(None, "Open " + key + " Data File", '.', "(*.csv)")[0]

я хочу filename = {str}'C:/.././.../format.csv'

не filename = <class 'tuple'>: ('C:/.././.../format.csv', '(*.csv)')

1 ответ

Решение

После просмотра репозитория, который также обновлялся до Qt5; Я обнаружил, что они использовали такую ​​линию.

filename, _filter = QtWidgets.QFileDialog.getOpenFileName(None, "Open " + key + " Data File", '.', "(*.csv)")

filename является строкой и (*.csv) отбрасывается в _filter переменная

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