web-dev-qa-db-ja.com

QtWidgets.QFileDialog.getOpenFileNameはタプルを返します

最近、Python用のQt5の新しいバージョンに更新しました。そうすることで、発生した注目すべき変更のいくつかに応じてコードを変更する必要がありました。自分が作成したこのコード行について、いくつかの洞察を得たいと思いました。関数から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)')ではありません

8
tisaconundrum

Qt5にも更新されていたリポジトリを調べた後。私は彼らがこのような線を使っているのを見つけました。

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

filenameは文字列であり、(*。csv)は_filter変数で破棄されます

10
tisaconundrum