这个是我在 python 自带的 idle 中敲了下列代码,结果为什么是这样?
1 fjhmx OP 为什么不是'\\nihao'??? |
![]() | 2 Trim21 2016-10-13 15:07:21 +08:00 via Android 因为不是 print 内容,没必要转义 |
![]() | 3 Trim21 2016-10-13 15:08:46 +08:00 via Android 因为不是要打印这个字符串,所以没必要把转义字符转义之后再输出,这里只是提示一下这个变量是啥而已 |
![]() | 4 Zzzzzzzzz 2016-10-13 15:09:41 +08:00 要转义引号前加 r 你这里\n 是换行, 要是 print 就是换个行然后 ihao |
![]() | 7 popu111 2016-10-13 15:33:07 +08:00 并没有为\K 的转义符,故 Python 认为你是想输入一个\,自动帮你插入了(我也懒得试了,只看楼主的描述回答,不正确的话还请谅解 |
8 yangtukun1412 2016-10-13 15:33:45 +08:00 可以看下 Python 源码中的 PyString_DecodeEscape() 函数, 对非 escape 字符会将 \ 处理为 \\. |
![]() | 10 jugelizi 2016-10-13 15:58:17 +08:00 不要在交互模式下写代码 |
11 coroutine 2016-10-13 16:14:44 +08:00 →_→ 为什么说的那么麻烦的样子。 "\n"是有特殊含义的(换行)。 你 print 的时候,就会发现 \n 代表换行了→_→ 而由于反斜杠加上其他字符有特殊含义,所以你真的要写包含反斜杠(就是你的\KKKK 中的)的时候,需要把这个转义。所以你就看到了两根反斜杠→_→ 第一个反斜杠 用于 转义你真的想表达的那根第二个反斜杠。 |
12 introom 2016-10-13 16:33:07 +08:00 via Android 为什么要动不动称呼大神,就好像罗湖过关的时候,收购的贩子看到你手里拿着奶粉就会很殷切地喊你靓仔一个道理么? |