繁体   English   中英

python 3,OSError:[Errno 22]无效的参数:

[英]python 3, OSError: [Errno 22] Invalid argument:

我在将数据从qtablewidget保存到excel时遇到问题

def save(self):        
    path = QtWidgets.QFileDialog.getSaveFileName(self.tableWidget_2,'Save File', '', 'CSV(*.csv)')
    #if not path.isEmpty():

    with open(str(path), 'wb') as stream:
        writer = csv.writer(stream)
        for row in range(self.tableWidget_2.rowCount()):
            rowdata = []
            for column in range(self.tableWidget_2.columnCount()):
                item = self.tableWidget_2.item(row, column)
                if item is not None:
                    rowdata.append(str(item.text()).encode('utf8'))
                else:
                    rowdata.append('')
            writer.writerow(rowdata) 

我收到此回溯错误:

追溯(最近一次通话):
保存文件“ C:\\ Users \\ Warren \\ Desktop \\ new interface \\ code \\ create_summary.py”,第60行
使用open(str(path),'wb')作为流:
OSError:[Errno 22]无效的参数:“('C:/ Users / Warren / Desktop / new interface / code / dsdsd.csv','CSV(*。csv)')”

如何解决这个问题?

只需从getSaveFilename解压缩结果:

path, _ = QtWidgets.QFileDialog.getSaveFileName(self.tableWidget_2,'Save File', '', 'CSV(*.csv)')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM