Liczba linii jest znana na wstępie.W języku Python, jak uzyskać liczby całkowite z pliku .txt z odstępem i r n rozdzielonymi liczbami na wielu liniach?
plik wejściowy:
0 1 2 3 4 5 6 7 8
8 1 2 3 4 5 6 7 0
4 0 8 2 6 3 7 1 5
..n such lines
Pożądany wynik:
line1 = [0, 1, 2, 3, 4, 5, 6, 7, 8]
line2 = [8, 1, 2, 3, 4, 5, 6, 7, 0]
line3 = [4, 0, 8, 2, 6, 3, 7, 1, 5]
.
.
linen = [n1, ........ n9]
Jestem obecnie:
- Striping plik z '\ r \ n' na każdej linii
- Uzyskiwanie oddzielnych linii w każdej linii przy użyciu .split() do i int (i) do konwersji liczb całkowitych
Kod:
#The lines start at the 7th byte in the input file.
f.seek(7)
#Getting rid of the '\r\n'
lines = [line.rstrip('\n\r') for line in f]
#1st line
line0 = lines[0]
line = [[int(i) for i in line0.split()]]
print line
...& so on for the 'n' lines
Miałem zamiar użyć dyktatu, ale jak @Padraic Cunningham i twoje odpowiedzi wskazują, używanie listy list i indeksowanie jest lepszą opcją. Dziękuję Ci! – Ketcomp