1、处理\n
测试文本如下:
不做处理时,输出的列表会有\n,如下
path = "test.txt"
txt = open(path, "r", encoding="UTF-8")
print(txt.readlines())
txt.close()
如上代码输出的结果如下:
['123\n', '456\n', '789\n', '123']
使用strip方法可以去除,代码如下
path = "test.txt"
txt = open(path, "r", encoding="UTF-8")
txt_list = []
for line in txt.readlines():
# txt.readlines()读取整个文件,返回数据中每一行有\n存在,需使用line.strip去掉
# readlines()方法读取整个文件所有行,保存在一个列表(list)变量中,每行作为一个元素,但读取大文件会比较占内存
line = line.strip() # 去掉每行头尾空白
txt_list.append(str(line))
print(txt_list)
txt.close()
输出结果如下:
['123', '456', '789', '123']
2、strip方法科普
说明:Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)或字符序列。
注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
strip()方法语法:str.strip([chars])
参数:chars -- 移除字符串头尾指定的字符序列
返回值:返回移除字符串头尾指定的字符序列生成的新字符串
使用方法如下:
# strip()方法语法:str.strip([chars])
str = "*abc*"
print(str.strip("*"))
# 输出结果 abc
str = "12abc21"
print(str.strip("12"))
# 输出结果 abc
str = "\n123abc\n"
print(str.strip())
# 输出结果 123abcd
# 注:chars空时,默认删除首尾的空白符(包括'\n', '\r', '\t', ' ')