2014-10-03 68 views
0

我在比较行行== a [1]中遇到问题,因为它没有进入此循环。我试着测试输出,发现文件中已经有值'a'。以下是我的代码。字符串比较错误

a = "djsajdlasak" 
f = open('users.txt','r+') 
k = 0 
for line in f: 
    print line 
    if line == a: 
     k = 1 
if k == 0: 
    f.write(a + '\n') 
f.close() 
+0

请准确解释(1)你想做什么(2)什么是预期的输出(3)什么当前输出或错误信息 – shx2 2014-10-03 05:39:31

回答

0

你需要从你从文件中读取行剥离出换行/行终止。你可以使用str.strip,来达到你想要的。

要么改线for line in f:for line in(elem.strip() for elem in f): 或添加一个额外的行下面你for声明

for line in f: 
    line = line.strip() 
    print line 
    if line == a: 
     k = 1 
+0

非常感谢。有用。 – jade 2014-10-03 05:43:57