V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fjhmx
V2EX  ›  程序员

有没有了解 python 的大神帮我回答这个问题

  •  
  •   fjhmx · 2016-10-13 15:00:41 +08:00 · 2395 次点击
    这是一个创建于 2970 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这个是我在 python 自带的 idle 中敲了下列代码,结果为什么是这样?

    暂时不知道为何的问题

    13 条回复    2016-10-13 19:50:14 +08:00
    fjhmx
        1
    fjhmx  
    OP
       2016-10-13 15:03:17 +08:00
    为什么不是'\\nihao'???
    Trim21
        2
    Trim21  
       2016-10-13 15:07:21 +08:00 via Android
    因为不是 print 内容,没必要转义
    Trim21
        3
    Trim21  
       2016-10-13 15:08:46 +08:00 via Android
    因为不是要打印这个字符串,所以没必要把转义字符转义之后再输出,这里只是提示一下这个变量是啥而已
    Zzzzzzzzz
        4
    Zzzzzzzzz  
       2016-10-13 15:09:41 +08:00
    要转义引号前加 r
    你这里\n 是换行, 要是 print 就是换个行然后 ihao
    fjhmx
        5
    fjhmx  
    OP
       2016-10-13 15:12:46 +08:00
    @Trim21 那输入'\KKK',为什么结果又是'\\KKK'?
    fjhmx
        6
    fjhmx  
    OP
       2016-10-13 15:14:02 +08:00
    @Zzzzzzzzz rawString 不是应该是不转义才用?
    popu111
        7
    popu111  
       2016-10-13 15:33:07 +08:00
    并没有为\K 的转义符,故 Python 认为你是想输入一个\,自动帮你插入了(我也懒得试了,只看楼主的描述回答,不正确的话还请谅解
    yangtukun1412
        8
    yangtukun1412  
       2016-10-13 15:33:45 +08:00
    可以看下 Python 源码中的 PyString_DecodeEscape() 函数, 对非 escape 字符会将 \ 处理为 \\.
    tankb52
        9
    tankb52  
       2016-10-13 15:36:53 +08:00
    @fjhmx
    第一个反斜杠是为了转义第二个反斜框

    参见 https://www.v2ex.com/t/234313
    jugelizi
        10
    jugelizi  
       2016-10-13 15:58:17 +08:00
    不要在交互模式下写代码
    coroutine
        11
    coroutine  
       2016-10-13 16:14:44 +08:00
    →_→ 为什么说的那么麻烦的样子。

    "\n"是有特殊含义的(换行)。
    你 print 的时候,就会发现 \n 代表换行了→_→

    而由于反斜杠加上其他字符有特殊含义,所以你真的要写包含反斜杠(就是你的\KKKK 中的)的时候,需要把这个转义。所以你就看到了两根反斜杠→_→ 第一个反斜杠 用于 转义你真的想表达的那根第二个反斜杠。
    introom
        12
    introom  
       2016-10-13 16:33:07 +08:00 via Android
    为什么要动不动称呼大神,就好像罗湖过关的时候,收购的贩子看到你手里拿着奶粉就会很殷切地喊你靓仔一个道理么?
    Zzzzzzzzz
        13
    Zzzzzzzzz  
       2016-10-13 19:50:14 +08:00
    @fjhmx 单引号不转义的是 perl 和 php 啊, python 转的啊.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2808 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 1222ms · UTC 07:01 · PVG 15:01 · LAX 23:01 · JFK 02:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.