2010-06-29 58 views

回答

30

閱讀documentation

with open('names.txt', 'r') as f: 
    myNames = f.readlines() 

已經提供的答案是怎麼別人擺脫換行符。

更新

Fred Larson提供了在他的評論一個很好的解決方案:

with open('names.txt', 'r') as f: 
    myNames = [line.strip() for line in f] 
+1

變化'打開(文件, 'R')'到'開放(」 names.txt','r')'。 'file'是一個內置類型,它不應該被用作變量名稱...否則,很好的解決方案。 – tux21b 2010-06-29 15:18:05

+0

@ tux21b:你說得對,謝謝。 – 2010-06-29 15:23:05

+3

如果我們想把'strip'加入到這個解決方案中,我可能會這樣做:'myNames = [line.strip()for line in f]'。 – 2010-06-29 15:24:10

5
f = open('file.txt','r') 

for line in f: 
    myNames.append(line.strip()) # We don't want newlines in our list, do we? 
0
Names = [] 
for line in open('names.txt','r').readlines(): 
    Names.append(line.strip()) 

條()之前和之後的字符串切空間...

+1

您正在遍歷文件內容兩次... – 2010-06-29 15:23:41

3
names=[line.strip() for line in open('names.txt')] 
0
#function call 
read_names(names.txt) 
#function def 
def read_names(filename): 
with open(filename, 'r') as fileopen: 
    name_list = [line.strip() for line in fileopen] 
    print (name_list) 
0

這應該是在地圖和lambda

with open ('names.txt','r') as f : 
    Names = map (lambda x : x.strip(),f_in.readlines()) 

我指正(或至少改善)了良好的情況下。 List內涵是更優雅

with open ('names.txt','r') as f : 
    Names = [name.rstrip() for name in f] 
0

讀取一個文件,並把每行列表中的Python的方式:

from __future__ import with_statement #for python 2.5 
Names = [] 
with open('C:/path/txtfile.txt', 'r') as f: 
    lines = f.readlines() 
    Names.append(lines.strip()) 
相關問題