我注意到执行此命令时:
comb = open ("out.txt", "r").readlines()[0]
print comb
它将打印输出文件中的第一行和后面的空行。为什么我有空行?
答案 0 :(得分:4)
来自docs:
readline()
从文件中读取一行; 换行符(\n
)留在字符串 的末尾,如果文件没有,则只在文件的最后一行省略以换行结束。
您可以改用:
open("out.txt", "r").read().splitlines()[0]
答案 1 :(得分:2)
因为readlines()
读取带有EOL字符的行,而print()
在打印提供的文本后添加了EOL字符。 EOL - 行尾,通常为\n
。
答案 2 :(得分:1)
file.readlines()
不会在每行末尾删除换行符,print
会添加换行符。
答案 3 :(得分:1)
空行是因为该行被读取为在每行末尾有一个'\n'
字符(换行符)。不幸的是,Python不会自动删除它。