在Python中读取flies时处理\n分隔符
每次使用Python中的以下代码读取文本文件时,每行(最后一行除外)都以分隔符结尾在Python中读取flies时处理\n分隔符,python,file,text,Python,File,Text,每次使用Python中的以下代码读取文本文件时,每行(最后一行除外)都以分隔符结尾 lines = open('the_file.txt').readlines() 然后,我被迫使用以下方法修复此问题: for i in range(len(lines)): lines[i] = lines[i].replace('\n', '') 是否有更干净的方法来执行此操作,这样我就不必使用此黑客修复程序来删除所有实例?使用列表理解: lines = open('the_file.txt').
lines = open('the_file.txt').readlines()
然后,我被迫使用以下方法修复此问题:
for i in range(len(lines)):
lines[i] = lines[i].replace('\n', '')
是否有更干净的方法来执行此操作,这样我就不必使用此黑客修复程序来删除所有实例?使用列表理解:
lines = open('the_file.txt').readlines()
lines = [line.strip() for line in lines]
这个黑客补丁甚至不起作用。使用
for line in file:Process_line()
逐行处理文件。您可以在这里找到答案:由于垃圾收集,您无法为for
循环计数器分配值。在退出作用域之前,这也不会关闭打开的文件。最好将与
块一起使用。strip
从字符串中删除多余的空格和换行符。rstrip('\n')
更合适;在代码中,它还将删除行开头的所有空格;这可能不是我们想要的。也许,但在删除换行符的情况下,Ryan似乎也希望删除空白。