Python 字符串前加r,b,u

问题描述

在处理python代码的时候,经常可以看到字符串的前面有u, b, 或r字母,如下图所示:

b'2019:12:26 07:52:16'

加上这些字母有什么意义呢?

1、字符串前加字母u

作用: u表示将后面跟的字符串以unicode格式进行编码

常用在含有中文的字符串前面(不仅针对中文,可以跟任何字符串)。

Python2中,默认的编码格式是ascii,因此直接使用中文会出现乱码

在这里插入图片描述

2、字符串前加字母r

作用: 表示非转义的原始字符串。

该字母后面一般接转义字符,有特殊含义的字符。加上r表示一个普通字符串,去掉反斜杠的转义。

常用于正则表达式或文件绝对地址等。

如:r'\n2\n' 此处的\n不表示换行,只表示字符串\n,如下图
在这里插入图片描述

3、字符串前加字母b

作用:加字母b表示后面接的字符串是byts类型。 b' '表示是一个bytes对象。

Python2.x中,前缀b没有具体意义,该写法是为了兼容Python3.xPython2.x中只有字节形式的字符串。

Python3.x中,bytesstr类型可以互相转换,如下:

  • strbytes
    str.encode('utf-8')
  • bytesstr
    bytes.decode('utf-8')

如下所示:
在这里插入图片描述

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值