字符串比较错误

时间:2014-10-03 05:36:52

标签: python

我在比较直线== 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()

2 个答案:

答案 0 :(得分:0)

for line in f与行终结符一起产生行,因此您需要删除它们,请参阅to read line from file in python without getting "\n" appended at the end

答案 1 :(得分: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