2016-07-28 3 views
1

Mein Programm liest eine Textdatei wie folgt formatiert mit Leerzeichen zwischen den einzelnen Ziffer:Python: read in Textdatei in numpy.loadtxt Format Splitting ganze Zahlen von Ziffern

0 1 1 
1 0 0 
1 0 0 

Meine aktuellen Code der Textdatei zu lesen ist

G = numpy.loadtxt(filename, int) 

Wenn ich (G) zu drucken, sieht die Ausgabe wie folgt aus:

[[0 1 1] 
[1 0 0] 
[1 0 0]] 

ich neue txt-Dateien erhalten, dass Ich brauche auf meinem Programm laufen, aber die Textdateien haben keine Leerzeichen zwischen jeder Ziffer wie folgt aus:

011 
100 
100 

ich genau vor, ohne Komma, diese neuen TXT-Dateien in eine 2D-Liste lesen zu können, möchte wie . Ich versuchte dies:

filename = open(file, "r") 
G = [] 
gr = filename.readline().strip() 
while gr: 
    gr = list(map(int,str(gr))) 
    G.append(gr) 
    gr = filename.readline().strip() 

Wenn ich drucken (G) sieht es so aus und nicht mit meinem Programm funktioniert:

[[0, 1, 1], [1, 0, 1], [1, 1, 0]] 

Gibt es eine Möglichkeit, diese neuen Textdateien ohne Leerzeichen zu lesen zwischen jede Ziffer in eine Liste mit der gleichen Formatierung wie zuvor?

Antwort

1

Was Sie bereits haben, funktioniert fast. Fügen Sie einfach eine weitere Zeile am unteren Rand des Codes, wie folgt aus:

G = numpy.array(G) 
+0

Thank you! Das hat funktioniert. – BodhiWel

Verwandte Themen