逐梦者 发表于 2020-12-4 14:48:39

老哥们,为什么用迭代打印文件就会换行两次呀?

百度到了解决的办法,但是没有讲原因,为什么遇到换行符就是两次换行,普通字符就是正常打印

wp231957 发表于 2020-12-4 14:53:10

看代码说话

hrp 发表于 2020-12-4 14:55:27

因为读取到的文本包含换行符,print()又默认行尾打印一个换行符,这就是两个换行符了,print加个参数end=''就行,或者把读取到的字符的换行符替换成空字符。

jackz007 发表于 2020-12-4 15:52:29

for i in f:
    prinr(i . strip())

逐梦者 发表于 2020-12-4 20:07:39

hrp 发表于 2020-12-4 14:55
因为读取到的文本包含换行符,print()又默认行尾打印一个换行符,这就是两个换行符了,print加个参数end='' ...

老哥,用 for i in f 迭代出来的i,每次迭代的i不是单个字符而是一行字符吗?

hrp 发表于 2020-12-4 20:19:34

逐梦者 发表于 2020-12-4 20:07
老哥,用 for i in f 迭代出来的i,每次迭代的i不是单个字符而是一行字符吗?

直接对打开的文件对象迭代,每次都是一行的,行尾包含换行符
页: [1]
查看完整版本: 老哥们,为什么用迭代打印文件就会换行两次呀?