2010-07-20 35 views
1

讀說我有一個文本文件中的以下內容:從一個純文本文件


蘋果
自行車

如何我可以讀取它,並付諸一本字典或一個列表?

+0

它在手冊中:http://docs.python.org/tutorial/inputoutput.html – CrociDB 2010-07-20 05:19:12

回答

5

讀它們放入一個列表平凡與readlines()完成:

f = open('your-file.dat') 
yourList = f.readlines() 

如果您需要剝離出來的換行符,您可以使用ars' method,或做:

yourList = [line.rstrip('\n') for line in f] 

如果你想用字典按鍵從1到列表的長度,想到的第一種方法是按上述方式製作列表,然後執行:

yourDict = dict(zip(xrange(1, len(yourList)+1), yourList)) 
+0

鍵可以像1 2 3 4 – babikar 2010-07-20 05:17:29

+0

這是一個使用開放('你的文件')的好習慣.dat')作爲f:',以便文件句柄正確關閉。 – blokeley 2010-07-20 07:55:49

+0

@blokeley它是,但取決於可能涉及從__future__'導入的版本,並且我不打算解釋所有對於雙行代碼段的所有內容 – 2010-07-20 08:06:48

0

the Python tutorial中對此進行了相當詳細的介紹。

lines = open('filename.txt', 'r').readlines() 
1
words = [] 
for word in open('words.txt'): 
    words.append(word.rstrip('\n')) 

words列表將包含在文件中的話。 strip刪除換行符。

0

您可以像這樣使用with這個文件。這就是所謂的上下文管理器,並自動在縮進塊

with open('data.txt') as f: 
    words = f.readlines() 

結束時,如果你想這樣做沒有上下文管理器關閉該文件,你應該關閉該文件自己

f = open('data.txt') 
words = f.readlines() 
f.close() 

否則該文件保持打開,至少只要f仍在範圍內