在python2里面,u表示unicode
string,类型是unicode,
没有u表示byte
string,类型是
str。
在python3里面,所有字符串都是unicode
string,
u前缀没有特殊含义了。
r都表示raw
string.
与特殊字符的escape规则有关,一般用在正则表达式里面。
r和u可以搭配使用,例如ur"abc"。
如有疑问,请追问。
字符串前加 r
r"" 的作用是去除转义字符.
字符串前加 f
f 的作用是表示在字符串内支持大括号内的python 表达式
字符串前加 b
b的作用是表示这是一个 bytes 对象,后面字符串是bytes 类型。
字符串前加 u
表明后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。
1.字符串前加 u:代表字符串以 Unicode Code 格式 进行编码,一般用在中文等非英文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。
Python 3.6及之后的版本默认使用utf-8编码形式,所以也可在不加u的情况下定义中文字符串。
2.字符串前加 r:
代表将字符串中具有特殊含义的字符意义去掉,比如:\n表示换行,若前面加上r, 即:r'\n',就表示一个斜行和小写字母n了。此方法常用于正则表达式,对应着re模块。
3.字符串前加 b:
代表后面字符串是bytes 类型。将字符串表示为:字节对象类型,类型:bytes。
python socket(TCP)通讯必须传输的都是bytes类型的数据。