LINUX.ORG.RU

[Python3] Непонятный глюк


0

1

Записываю список с миллионом элементов в файл.

Список такой:

>>> i=0
>>> while(i<10):
...   print(l[i])
...   i+=1
... 
[168.3350067139, 31.0410003662, 0]
[168.2489929199, 31.0900001526, 0]
[168.1629943848, 31.1380004883, 0]
[168.0769958496, 31.186000824, 0]
[167.9909973145, 31.2339992523, 0]
[167.9049987793, 31.281999588, 0]
[167.8179931641, 31.3299999237, 0]
[167.7319946289, 31.3780002594, 0]
[167.6450042725, 31.4260005951, 0]
[167.5579986572, 31.4740009308, 0]

Записываю список в файл, при записи зачем-то выводятся значения l[2] элементов

>>> f=open("llc.txt",'wt')
>>> for t in l:
>>>  f.write("{0[0]:.4f} {0[1]:.4f} {0[1]}".format(t)
30
30
30
30
29
#...(и так выводится 1000000 значений на экран)

Почему выводятся значения? Не понимаю

имел в виду f.write(«{0[0]:.4f} {0[1]:.4f} {0[1]}\n».format(t)

alexkarta
() автор топика

[code]>>> import io

help(io.FileIO.write)[/code]

anonymous
()
>>> import io
>>> help(io.FileIO.write)
anonymous
()

Потому что write() возвращает значения. Вот та же «проблема»:

[code]

for x in range(10):

... x ... 0 1 2 3 4 5 6 7 8 9 [/code]

Такая «проблема» возникает только при интерактивном использовании, но не в скриптах.

AEP ★★★★★
()
Ответ на: комментарий от AEP

Потому что write() возвращает значения. Вот та же «проблема»:

>>> for x in range(10):
...     x
...
0
1
2
3
4
5
6
7
8
9

Такая «проблема» возникает только при интерактивном использовании, но не в скриптах.

AEP ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.