Я не совсем понимаю, почему это не работает. Кто-нибудь может мне помочь?конвертировать строку в float в цикле
У меня есть текстовый файл, в котором данные перечислены следующим образом.
04/05/2015 15:30 58,6
04/05/2015 16:00 56,3
...
каждая строка имеет 3 пространства разделенных данных.
Я прочитал с
with open('./data') as fi:
data = [[t for t in line.split() ]for line in fi]
Тогда переменная содержит данные
[['04/05/2015', '15:30', '58.6'],
['04/05/2015', '16:00', '56.3'],
...
]
Я хотел бы, чтобы вынуть данные только в 3-м столбце, а затем я сделал петлю.
for t in data:
a=float(t[2])
Но я получил ошибку
ValueError Traceback (most recent call last)
<ipython-input-76-83c96b309de0> in <module>()
2 i=0
3 for t in data:
----> 4 a=float(t[2])
5
ValueError: could not convert string to float:
То, что я не понимаю, если я заменю «а =» с «печать», напечатанное значения.
for t in data:
print float(t[2])
Почему это не работает путем замены, но значения печати?
Можете ли вы указать значение 't [2]' при возникновении ошибки? –
Покажите нам полное содержимое файла. –
Кроме того, вложенное понимание бессмысленно. Используйте: '[line.split() для строки в fi]' –