2014-02-21 16 views
0
loginsystem=open("loginsystem.txt","r") 
myuser=loginsystem.readline() 
mypass=loginsystem.readline() 
print(myuser) 
print(mypass) 

此代碼的樣本反正它的工作原理,但它從讀取文本文檔不讓它獲得信息的權利它留下了額外的行。下面是它讀取的信息:我覺得你的意思是看起來像Python的登錄:錯誤閱讀文本文件

myuser 

mypass 

... 

,而不是

myuser 
mypass 

你的輸出你想從你的readline()小號剝離換行符

myuser 
mypass 
user1 
pass1 
user2 
pass2 
user3 
pass3 
user4 
pass4 
user5 
pass5 
+2

我不知道理解您的問題。你的意思是'它的工作原理,但是它讀取的文本文件不會讓它獲得正確的信息,它會留下額外的一行'? – IanAuld

+0

你能發表一些你正在閱讀的文本文件的示例,以及基於文件示例的程序輸出嗎? –

+0

以下是該文件圖片的鏈接:https://dl.dropboxusercontent.com/u/176171143/Python.png – Tinymantwo

回答

1

myuser = loginsystem.readline().rstrip() 

但是,使用with可能是更好的做法,因此您的文件處理已妥善處理。

with open("loginsystem.txt", "r") as loginsystem: 
    ... 

此外,如果你想閱讀所有對用戶名和密碼,你可以這樣做:

from itertools import izip_longest 
with open("loginsystem.txt", "r") as loginsystem: 
    for line1, line2 in izip_longest(*[loginsystem]*2): 
     username = line1.rstrip() 
     password = line2.rstrip() 
     print username, password 
+0

感謝您的幫助 – Tinymantwo