python的r前缀_python字符串前面加上'r'的作用

python字符串前面加上'r'的作用

一、总结

一句话总结:

'r'是防止字符转义的 如果路径中出现'\t'的话 不加r的话\t就会被转义 而加了'r'之后'\t'就能保留原有的样子

二、python字符串前面加上'r'的作用

转自或参考:python字符串前面加上'r'的作用

https://www.cnblogs.com/YangtzeYu/p/7875634.html

在打开文件的时候open(r'c:\....')

加r和不加''r是有区别的

'r'是防止字符转义的 如果路径中出现'\t'的话 不加r的话\t就会被转义 而加了'r'之后'\t'就能保留原有的样子

在字符串赋值的时候 前面加'r'可以防止字符串在时候的时候不被转义 原理是在转义字符前加'\'

例:

三、Python字符串中的r前缀

转自或参考:Python字符串中的r前缀

https://www.cnblogs.com/chaoguo1234/p/9162476.html

在Python中,如果字符串的前面有r/R前缀,那么,就会禁用转义符\的功能:

>>>path = r'C:\new\text.dat'

>>>pah'C:\\new\\text.dat'

>>>print(path)

C:\new\text.dat>>>len(path) #虽然打印的形式不一样,但是字符数还是15个

15

上面的例子中,在交互环境下打印,Python将打印结果当成Python code来看待,因此,会有双斜杠;而print函数打印形式就比较友好。但是,无论采用哪种打印方式,字符个数是不变的,上述例子中,使用len函数查看,字符个数还是15个。

对于r前缀,还需要注意的一点是,如果字符串结束标志,即'或者"前面是一个\,即使使用了r前缀,Python仍然将它看成不合法的字符:

>>>S = r'a\'

SyntaxError:EOL whilescanning string literal>>>S = r'a\\' #正确处理方式,仍需双斜杠\\

>>>S'a\\\\'

>>>print(S)

a\\>>>len(S) #每一个斜杠\都看成一个字符

3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值