如何在Python中读取文本文件并生成无换行符的字符串列表?
解决Python读取文本行时的换行符问题
读取文本文件时每行带\n是因为文件里每行末尾的换行符被一并读入了,给你几种实用的解决方法:
方法1:用strip()移除首尾空白字符
strip()会去掉字符串首尾所有空白(包括换行、空格、制表符),适合不需要保留首尾空格的场景:
names = [] with open('your_file.txt', 'r') as f: for line in f: cleaned_line = line.strip() # 跳过空行(如果文件末尾或中间有空行的话) if cleaned_line: names.append(cleaned_line) print(names) # 输出: ['A', 'B', 'C', 'D']
方法2:用rstrip('\n')只移除末尾换行符
如果你需要保留行首或行中的空格,用这个方法只去掉末尾的换行符:
names = [] with open('your_file.txt', 'r') as f: for line in f: cleaned_line = line.rstrip('\n') if cleaned_line: names.append(cleaned_line) print(names)
方法3:用splitlines()直接生成无换行符的列表
这是最简洁的写法,一次性读取所有内容并按行分割,自动去掉换行符:
with open('your_file.txt', 'r') as f: names = f.read().splitlines() # 可选:过滤掉空行 names = [line for line in names if line] print(names)
内容的提问来源于stack exchange,提问作者Vexter
相关产品推荐
相关产品推荐

