Задать вопрос
@Timebird

Как считать данные из файла и записать их в список?

Имеется файл с записанными в нем числами типа float. На каждой строке одно число. Необходимо их оттуда считать, а затем записать в список. Пытался так:
probs_in_file = open("textfile.txt")
probs = probs_in_file.read()
probs_in_file.close()
print('\nprobs:\n', probs)

Работает, но в список не знаю как записать.
(probs -- это от слова "probabilities", числа типа float -- это вероятности. :))

Пытался еще так:
prob_list = []
probs = open('textfile.txt', 'r')
for line in probs:
	prob_list.append(line)
print('\nprob_list\n', prob_list)

Выдаёт что-то типа: [0.002703125\n, 0.002375\n, 0.001078125\n, 0.001796875\n, ...], зато в списке.

Вопрос таков: как записать в список в первом случае и/или убрать символы переноса строки во втором?
Заранее спасибо).
  • Вопрос задан
  • 1218 просмотров
Подписаться 1 Оценить 1 комментарий
Решения вопроса 1
AtomKrieg
@AtomKrieg
Давай я поищу в Google за тебя
prob_list = []
probs = open('textfile.txt', 'r')
for line in probs:
  prob_list.append(float(line))
print('\nprob_list\n', prob_list)
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@abcd0x00
[guest@localhost py]$ cat file.txt 
1.5
2.6
3.123
4.56
[guest@localhost py]$


>>> with open('file.txt') as fin:
...   lst = list(map(float, fin))
... 
>>> lst
[1.5, 2.6, 3.123, 4.56]
>>>
Ответ написан
Комментировать
sim3x
@sim3x
prob_list = []
with open('textfile.txt', 'r') as probs:
   for line in probs:
      prob_list.append(float(line.strip()))
print('\nprob_list\n', prob_list)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы