我在比较行行== 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()
我在比较行行== 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()
for line in f
产生线连同行终止,所以你需要带他们,看到to read line from file in python without getting "\n" appended at the end
它的工作原理。非常感谢你。 – jade 2014-10-03 05:44:20
你需要从你从文件中读取行剥离出换行/行终止。你可以使用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
非常感谢。有用。 – jade 2014-10-03 05:43:57
请准确解释(1)你想做什么(2)什么是预期的输出(3)什么当前输出或错误信息 – shx2 2014-10-03 05:39:31