Когда я запускаю свою программу, я получаю следующую ошибку и не уверен, как ее исправить. Может кто-нибудь помочь объяснить, что это за ошибка и как ее исправить? Newb здесь, так что детали оценены. Спасибо за ваше время заранее!Ошибка при распаковке с помощью Pyside Qtgui
Код: выход
#!/usr/bin/python
import zipfile
from PySide import QtGui
import re
#Select file to extract
app = QtGui.QApplication([])
dialog = QtGui.QFileDialog()
dialog.setFileMode(QtGui.QFileDialog.AnyFile)
if (dialog.exec()):
fileName = dialog.selectedFiles()
#Select Directory to extract to
dialog = QtGui.QFileDialog()
dialog.setFileMode(QtGui.QFileDialog.Directory)
dialog.setOption(QtGui.QFileDialog.ShowDirsOnly)
if (dialog.exec()):
dirName = dialog.selectedFiles()
print("Extracting.....")
zFile= zipfile.ZipFile(fileName)
zFile.extractall(dirName)
Ошибка:
Traceback (most recent call last):
File "C:\Users\Jennifer\Documents\BatchScripts\unzip.py", line 22, in <module>
zFile= zipfile.ZipFile(fileName)
File "C:\Python33\lib\zipfile.py", line 933, in __init__
self._RealGetContents()
File "C:\Python33\lib\zipfile.py", line 970, in _RealGetContents
endrec = _EndRecData(fp)
File "C:\Python33\lib\zipfile.py", line 237, in _EndRecData
fpin.seek(0, 2)
AttributeError: 'list' object has no attribute 'seek'
Последняя часть неверна и будет устанавливать 'fileName/dirName' значение' None'. Метод [selectFile] (https://qt-project.org/doc/qt-4.8/qfiledialog.html#selectFile) используется для предварительного выбора файла в диалоговом окне и ничего не возвращает. Правильный подход заключается в использовании 'dialog.selectedFiles() [0]' (если, конечно, диалог не отменен). – ekhumoro
@ekhumoro - спасибо за это, я удалил вторую часть своего ответа. Я смотрел документацию PySide, и метод 'selectFile()' не указывал конкретно его возвращаемое значение. – MattDMo
Спасибо всем .. Это сработало отлично. – user1925422