不能自动去掉 \n 么

1 Patrick95 Aug 18, 2017 换行符。 要去掉的话: for line in file.readlines(): line=line.strip('\n') |
2 xingzhi1990 Aug 18, 2017 Python 不会自动去掉换行符的。 with open('test.txt', 'r') as f: lines = [line.strip() for line in f.readlines()] 使用 strip()函数可以去掉行首和行尾的 whitespace,比如空格,制表符、换行符。 |
3 geeglo Aug 18, 2017 \n 是换行符。 要去掉的话,自己处理 |
4 linuap Aug 18, 2017 via iPhone .rstrip("\n") |
5 mooncakejs Aug 18, 2017 readlines 很慢的 ,, 直接 for line in file |
6 allinwonder Aug 18, 2017 via iPhone Windows 下的文本文件行末是\n\r 哦 |
7 fearme OP 谢谢楼上各位的解答, 我主要是疑惑为什么还带个 '\n',以前用 delphi, 这种都是预处理掉 换行符的,所以疑惑了一下 |
8 msg7086 Aug 18, 2017 @allinwonder 这是哪个位面的 Windows。 |
9 yunkchen Aug 18, 2017 |
10 cxyfreedom Aug 18, 2017 @allinwonder 你 linux 和 windows 的搞反了吧 |
11 cxyfreedom Aug 18, 2017 @yunkchen at 错人了。你 linux 和 windows 的搞反了吧 |
13 honeycomb Aug 18, 2017 |
14 allinwonder Aug 18, 2017 via iPhone @msg7086 你们是搞笑吗? LF: Unix and Unix-like systems (Linux, macOS, FreeBSD, Multics, AIX, Xenix, etc.), BeOS, Amiga, RISC OS, and others[1] CR+LF: Microsoft Windows, DOS (MS-DOS, PC DOS, etc.), DEC TOPS-10, RT-11, CP/M, MP/M, Atari TOS, OS/2, Symbian OS, Palm OS, Amstrad CPC, and most other early non-Unix and non-IBM operating systems https://stackoverflow.com/questions/426397/do-line-endings-differ-between-windows-and-linux I translate this into these line endings in general: Windows: '\r\n' Mac (OS 9-): '\r' Mac (OS 10+): '\n' Unix/Linux: '\n' 我 96 年开始玩电脑的,难道你们现在这些小年轻码农玩的不一样? |
15 jarlyyn Aug 18, 2017 |
16 livexia Aug 18, 2017 via Android 尴尬现场 |
17 Miy4mori Aug 18, 2017 via iPhone 尬秀现场 |
18 allinwonder Aug 18, 2017 via iPhone @jarlyyn 你们这个位面的不打错字? |
19 lslqtz Aug 18, 2017 楼上看的我一脸懵 |
20 Orzpls Aug 18, 2017 via Android @allinwonder 你的回答才是完整的 |
21 wizardoz Aug 18, 2017 因为本来就每一行都有 \n |
22 msg7086 Aug 18, 2017 |
23 Patrick95 Aug 18, 2017 「我玩电脑玩得早,你们这些小年轻也配挑我的错?」 |
25 firebroo Aug 18, 2017 我 96 年开始玩电脑的,难道你们现在这些小年轻码农玩的不一样?哈哈哈 |
28 Deeer Aug 18, 2017 96 年就开始完电脑的大神,能帮我盗个号吗 () |
30 wildcat007 Aug 18, 2017 @msg7086 哈哈哈哈,那人真逗。 第一次遇到这样的问题的时候是两个文档内容一模一样,是个密码字典。一看,哎呦喂,怎么一个 10M,一个 13M (假设)。 看内容一样,看 16 进制发现不对,似乎是文件格式不同。最后百度了下,才知道每个系统下文件的换行字符不一样。 对于 96 年开始玩电脑的,我掐指算了算,这人真“年轻” 哇.jpg |
31 nosugar Aug 18, 2017 |
32 swulling Aug 18, 2017 via iPhone @allinwonder 自己看自己的六楼…摊手 |
33 allinwonder Aug 18, 2017 via iPhone @msg7086 一群 sb |
34 allinwonder Aug 18, 2017 via iPhone @swulling 看看谁先挑衅谁的,sb |
35 allinwonder Aug 18, 2017 via iPhone @firebroo sb 一个 |
36 gdsing Aug 18, 2017 文件不大就一次读入 open(file).read().splitlines() |
37 swulling Aug 18, 2017 via iPhone |
38 qnnnnez Aug 18, 2017 Python 读文本文件根本不会读到 \r,三种行尾都会转换成 \n |
39 wormcy Aug 18, 2017 via Android 瓜子花生矿泉水 |
40 chinvo Aug 18, 2017 @allinwonder 感谢扩充某个增强友善度的列表 |
42 zidian Aug 18, 2017 各位生活经验+1,不是每个人都有幽默感的 |
43 seiuneko Aug 18, 2017 @allinwonder #33 喵喵喵? |
44 msg7086 Aug 18, 2017 |
45 RqPS6rhmP3Nyn3Tm Aug 19, 2017 via iPhone 前排出售 96 年的拉菲和花生米 |
46 NVDA Aug 19, 2017 via iPhone 00 年开始玩电脑的看着楼上瑟瑟发抖 |
47 lxml Aug 19, 2017 我之前一直以为 Linux \n 上换行是天经地义的事情,即使我知道 Windows 上是使用 \r\n,我也坚持认为一切微软出品必是邪魔歪道, 直到我看见 HTTP 协议中 的信息分行…… |
48 allinwonder Aug 19, 2017 via iPhone |
49 RTNelo Aug 19, 2017 表面迎合.jpg |
50 LeGendAI Aug 19, 2017 @fearme https://stackoverflow.com/questions/11280282/to-read-line-from-file-in-python-without-getting-n-appended-at-the-end 保留 /n 是为了区分空行('\n')和文件结束(空串)。 |
51 ianchn Aug 19, 2017 我的天 |
52 firebroo Aug 19, 2017 @allinwonder 你牛逼你牛逼,我是渣渣~~ |
53 tempdban Aug 20, 2017 via Android @allinwonder 兄弟米心态怎么炸成这样,太有争斗心了。 |