2015-09-16 154 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文件,而不僅僅是一個文本看看庫解析這些 – 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]