У меня есть текстовый файл (data.txt) разделителями табуляцией следующим образом:из списка строк в список поплавков
name height weight
A 15.5 55.7
B 18.9 51.6
C 17.4 67.3
D 11.4 34.5
E 23.4 92.1
Программа ниже дает результат в виде списка строк.
with open('data.txt', 'r') as f:
col1 = [line.split()[0] for line in f]
data1 = col1 [1:]
print (data1)
with open('data.txt', 'r') as f:
col2 = [line.split()[1] for line in f]
data2 = col2 [1:]
print (data2)
with open('data.txt', 'r') as f:
col3 = [line.split()[2] for line in f]
data3 = col3 [1:]
print (data3)
Результаты таковы:
['A', 'B', 'C', 'D', 'E']
['15.5', '18.9', '17.4', '11.4', '23.4']
['55.7', '51.6', '67.3', '34.5', '92.1']
Но я хочу, чтобы получить data2 и Data3 как список поплавков. Как я могу исправить вышеуказанную программу? Любая помощь, пожалуйста.
@Nolen yes, но data2 = map (float, data2) приведен
Это похоже на файл tsv - вы рассмотрели использование [CSV-модуля] (http://docs.python.org/3.3 /library/csv.html) и изменение разделителя на вкладки? Вам нужно будет открыть файл только один раз, чтобы получить доступ ко всем столбцам. – thegrinner