gpt4 book ai didi

python - 为什么 readlines() 在我的文本文件中包含一个\n 字符(如果它不存在)?

转载 作者:太空宇宙 更新时间:2023-11-04 08:27:01 26 4
gpt4 key购买 nike

我正在尝试读取文件并收集包含以下内容的每个字符:"\n""\t"""

我的文本文件包含以下内容:

aaabbcddd

我故意遗漏了\n,所以 python 应该在 d 处停止读取。

代码如下:

fname  = "files.txt"
content = []
with open(fname) as f:
for each_line in f:
for each_character in each_line:
content.append(each_character)


print(content)

我的内容输出是:

['a', 'a', 'a', 'b', 'b', 'c', 'd', 'd', 'd', '\n']

如果 '\n' 是有意插入的,那么如果它存储在我的列表中就没问题;但是,在这种情况下,我没有输入 '\n'。

出了什么问题?

最佳答案

你读了一行。

一行以换行符结束。我很确定您的文本编辑器会在您键入的内容末尾插入它。

尝试添加一个简单的跟踪,记录您输入的内容:

for each_line in f:
print(len(each_line), "|", each_line, "|")

我的输出:

10 | aaabbcddd
|
['a', 'a', 'a', 'b', 'b', 'c', 'd', 'd', 'd', '\n']

即使我没有向文件添加返回字符,而且它只有一行,但编辑器 (vi) 会假定它。输入字符串有 9 个字母和换行符。

关于python - 为什么 readlines() 在我的文本文件中包含一个\n 字符(如果它不存在)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56178004/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com