0
所以,我使用Python(與PyQt),我有這個奇怪的問題。 其中:Python編碼錯誤(它工作在一個點,然後它不......)
self.listwithnames = ["Α.Μ.","Μονομελές-Τριμελές", "Ονοματεπώνυμο","Όνομα Πατρός","Όνομα Μητρός","Ημερομηνία Γέννησης",
"Τόπος Γέννησης","Φύλο","Εθνικότητα","Διεύθυνση Κατοικίας","Αστυνομικό Τμήμα",
"Τηλέφωνο","Επάγγελμα-Ιδιότητα","Ημερομηνία Δικασίμου","Αριθμός Πινακίου",
"Πράξη","Ημερομηνία Τέλεσης","Τόπος Τέλεσης","Ύπαρξη Συνενόχων",
"Παραδοχή","Περιγραφή Πράξης","Εμφάνιση","Αναβολή","Απόφαση","Αριθμός Απόφασης",
"Ημερομηνία Απόφασης","Παρουσία","Προηγούμενες Αποφάσεις","Υπεύθυνος Επιμελητής", "Σχόλια"]
#Επιλογές Αναζήτησης ComboBox:
self.combobox = QtGui.QComboBox(self)
for i in range(0,28):
self.combobox.addItem(self.listwithnames[i].decode("utf-8"))
self.horizontalLayout.addWidget(self.combobox, 0, 1, 1, 1)
在這裏,它工作得很好! 但在這裏:
l = [1, 8, 19, 20, 22, 27]
self.list_with_lists = [["Μονομελές", "Τριμελές"], ["Αγόρι", "Κορίτσι"], ["Ναι", "Όχι"], ["Ναι", "Όχι"], ["Πρωτοείσακτος", "Υπότροπος", "Αναβολή"], ["Παρών", "Απών"]]
if self.combobox.currentIndex() in l:
for l_ in self.list_with_lists[l.index(self.combobox.currentIndex())]:
for string in l_:
self.combobox2.addItem(string.decode('utf-8'))
它只是不,我得到這個錯誤:
UnicodeDecodeError: 'utf8' codec can't decode byte 0xce in position 0: unexpected end of data
真奇怪......
解決:
This is the final code:
l = [1, 8, 19, 20, 22, 27]
self.list_with_lists = [[u"Μονομελές", u"Τριμελές"], [u"Αγόρι", u"Κορίτσι"], [u"Ναι", u"Όχι"], [u"Ναι", u"Όχι"], [u"Πρωτοείσακτος", u"Υπότροπος", u"Αναβολή"], [u"Παρών", u"Απών"]]
if self.combobox.currentIndex() in l:
self.combobox2.clear()
for l_ in self.list_with_lists[l.index(self.combobox.currentIndex())]:
self.combobox2.addItem(l_)
對我來說這是希臘語......但嚴重的是,您可能會嘗試不使用'string'作爲變量名稱,因爲它是python中的受保護字詞,它是類型名稱! – seth
這不是問題,它可以很好地處理拉丁字符...... – Antoni4040
而不是'在l_中的字符串:'嘗試刪除該循環,並只是執行'l_.decode('utf-8')'。 – seth