有一行代码没看懂
with open ('test.txt','r') as f:lines = f.readlines()
print(lines)
with open('test.txt','w') as new:
for line in lines:
if line not in ['0\n','1\n']:# 求教各位,请问这行怎么理解?是什么意思呀?没看懂
new.write(line)
谢谢了 就是line的内容不是'0\n' 或 '1\n' 其中一个,按行读出来的内容一般末尾都是换行符(\n) 的,也就是说这个实现的效果是过滤内容为 0 或 1 的行 这一句的意思是,如果 line 不是以字符 '0' 或 '1' 结尾,那就把 line 写入文件 'test.txt' 。其效果,就是从文件 'test.txt' 中,删除所有以字符 '0' 或者 '1' 结尾的文本行。
if line not in ['0\n','1\n']:
new.write(line)
因为 readlines 读取文件对象时,会将一整行读取下来,即包含不可见字符 \n 换行符
所以 if 这里的意思就是若读取的字符不是 '0\n' 或 '1\n',那么就将读取到的内容写入新的文件对象中
页:
[1]