2015-09-16 2 views
2

Я использую этот код для чтения текстового файла в список.Чтение файла txt в список Python

with open("products.txt", "r") as f: 
    test=f.read().splitlines() 

print(test) 

Полученный результат:

['88888888,apple,0.50', '99999999,pear,0.20', '90673412,orange,1.20'] 

Мне нужен выход, чтобы выглядеть, как показано ниже, так что я могу ссылаться на отдельные элементы.

['88888888', 'apple', '0.50', '99999999', 'pear', '0.20', '90673412', 'orange', '1.20'] 
+0

Похоже, что вы читаете данные в формате CSV. Для этого вы можете использовать модуль [csv] (https://docs.python.org/2/library/csv.html). –

+0

У вас есть файл CSV, а не только текст на e, ищите библиотеки для их анализа. – Mark

+0

Как выглядит исходный файл? – erip

ответ

1

Вы можете использовать вложенный список понимание:

with open("products.txt", "r") as f: 
    test=[i for line in f for i in line.split(',')] 

Или использовать csv модуль отказаться от разделения линий:

>>> import csv 
>>> with open('products.txt') as csvfile: 
...  spamreader = csv.reader(csvfile, delimiter=',') 
     test=[i for row in spamreader for i in row] 
Смежные вопросы