2016-10-31 4 views
0

Wenn QLineEdit() in Text verwendet wird, scheint es einen Fehler in Listen und Wörterbücher zu erstellen, dieser Code funktioniert:PyQt Fehler mit QLineEdit

from PyQt5.QtWidgets import * 
a=[1,2] 
b=a[0] 
print(b) 

aber, wenn eine Zeile bearbeiten wird hinzugefügt wird Python

abstürzen
from PyQt5.QtWidgets import * 
c=QLineEdit() 
a=[1,2] 
b=a[0] 
print(b) 

Ich habe festgestellt, dass bei der Verwendung des Anaconda-Pakets auf mehreren Computern jemand vorschlagen kann, eine Arbeit zu umgehen, die nicht die Verwendung von Listen oder Wörterbüchern beinhaltet.

+2

Erhalten Sie eine Fehlermeldung? Fügen Sie immer vollständige Fehlermeldung (traceback) in Frage. – furas

+0

Bitte lesen Sie die Anleitung zur Bereitstellung eines [mcve]. – ekhumoro

Antwort

0

Sie verwenden es falsch. Zuerst müssen Sie QApplication(sys.argv) verwenden, die alle benötigten Module und Libraries initiiert.

from PyQt5.QtWidgets import * 
import sys 

app = QApplication(sys.argv) 

c = QLineEdit() 
a = [1,2] 
b = a[0] 
print(b) 

So finden Sie einige PyQt5 Tutorial.


EDIT: Problem ist nicht Liste oder Wörterbuch aber QListEdit (oder jedes andere Widget) ohne QApplication

Sie erhalten das gleiche Problem in

from PyQt5.QtWidgets import * 
QLineEdit() 

oder

from PyQt5.QtWidgets import * 
QWidget() 
+0

Dies war nur eine Demonstration, da es sich um ein Problem handelte, das ich in einem Programm mit etwa 500 Zeilen fand und die Zeilenbearbeitung nicht dazu gedacht war, etwas zu tun, aber den Fehler bei Listen und Wörterbüchern verursachte. – Giles

+0

Sie erhalten den gleichen Fehler auch ohne Listen und Wörterbücher. Problem ist nicht Liste oder dicioarny aber 'QListEditor' ohne' QApplication'. – furas

+0

Der Fehler trat in einem vollständigen Programm mit QApplication und keine Fehlermeldung in der Konsole auf, aber da ich es vorziehen würde, das Programm aufgrund von Plagiatsprüfungen nicht zu veröffentlichen, verstehe ich, dass es sehr schwierig für Sie wäre, zu helfen. Ich wusste daher nicht, dass es sich um ein separates Thema handelte. Danke trotzdem. – Giles

Verwandte Themen