Ich habe eine CSV-Datei mit zwei Spalten und mehr als 6000 Zeilen und möchte es in ein Wörterbuch in Python exportieren. hier ist ein Teil der großen Datei:Fehler beim Exportieren einer Datei in ein Wörterbuch in Python
ENST00000589805,CCCTCCCGGACTCCTCTCCCCGGCCGGCCGGCAAGAGTTTACAA
ENST00000376512,GTTGCCGAGGGGACGGGCCGGGCAGATGCCAAC
ENST00000314332,TTTAAG
ich diese Funktion schrieb:
def file_to_dict(filename):
f = open(filename, 'r')
answer = {}
for line in f:
k, v = line.strip().split(',')
answer[k.strip()] = v.strip()
return answer
versuchte ich, dass für eine kleine Datei und perfekt gearbeitet. aber als ich versuchte, das für meine große Datei, es diesen Fehler gab:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 5, in file_to_dict
ValueError: too many values to unpack
Ich habe versucht, die Lösung zu finden, aber nicht verwalten. Weißt du, wie man es löst? BTW, würde das Wörterbuch so aussehen:
{'ENST00000589805':'CCCTCCCGGACTCCTCTCCCCGGCCGGCCGGCAAGAGTTTACAA', 'ENST00000376512': 'GTTGCCGAGGGGACGGGCCGGGCAGATGCCAAC', 'ENST00000314332': 'TTTAAG'}
Sie gehen davon aus, dass es in jeder Zeile Ihrer Textdatei nur ein Komma gibt - ist das notwendigerweise wahr? – asongtoruin
Mögliches Duplikat von [Wie kann ich ValueError beheben: Zu viele Werte zum Entpacken "in Python?] (Http://stackoverflow.com/questions/17403371/how-can-i-fix-valueerror-too-many-values- to-unpack-in-python) – asongtoruin
Hinweis: 'k, v =" a, b, c ".split (", ")' löst den gleichen Fehler aus, wie von Ihnen in Frage. –