Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyQt QFileInfo错误_Python_Pyqt_Pyqt5 - Fatal编程技术网

Python PyQt QFileInfo错误

Python PyQt QFileInfo错误,python,pyqt,pyqt5,Python,Pyqt,Pyqt5,我正在PyQt中开发一个应用程序,当试图从用户选择的文件中获取QFileInfo时,我收到了错误消息 TypeError: arguments did not match any overloaded call: QFileInfo(): too many arguments QFileInfo(str): argument 1 has unexpected type 'tuple' QFileInfo(QFile): argument 1 has unexpected type 'tuple'

我正在PyQt中开发一个应用程序,当试图从用户选择的文件中获取QFileInfo时,我收到了错误消息

TypeError: arguments did not match any overloaded call:
QFileInfo(): too many arguments
QFileInfo(str): argument 1 has unexpected type 'tuple'
QFileInfo(QFile): argument 1 has unexpected type 'tuple'
QFileInfo(QDir, str): argument 1 has unexpected type 'tuple'
QFileInfo(QFileInfo): argument 1 has unexpected type 'tuple'
Abort trap: 6
我已经跟随每一个教程到一个发球台,但这个错误不断发生。 下面是我的代码,我只是将一个字符串传递到模块中。我不知道我需要做什么

    def __init__(self, r, c):
        super().__init__(r, c)
        self.check_change = True
        self.path = QtWidgets.QFileDialog.getOpenFileName(self,'Open File',os.getenv('Home'), 'CSV(*.csv)')        
        file_info = QFileInfo(self.path)
        file_name = file_info.fileName()
        #print(file_name)
        self.init_ui()

它看起来像
QtWidgets.QFileDialog.getOpenFileName
返回一个元组。要获得文件的路径,您需要执行如下示例中的操作-
\uu
只是一个占位符(请参见此处的示例:)


另一件简单的事情是只取元组的第一个值。因此OP可以只使用self.path[0]来获取路径。“参数1具有意外的“tuple”类型”基本上错误消息会告诉您问题所在。下一步是阅读
QFileDialog.getOpenFileName
的文档。
self.path, _ = QtWidgets.QFileDialog.getOpenFileName(self,'Open File',os.getenv('Home'), 'CSV(*.csv)')