在python程序中,有时我们会看到一些带有一定前缀的字符串,例如字符中有u,r,f,b等等。这些写法又代表什么意思,有什么作用呢?下面总结一下当前遇到的一些情况进行总结。
例如:u"这是我测试的中文字符串"
作用:后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。
例:r"\n\t”
表示一个普通生字符串 \n\t,而不表示换行和tab键了,或者也可以理解为raw。
作用:去掉反斜杠的转移机制。
(特殊字符:即那些,反斜杠加上对应字母,表示对应的特殊含义的,比如最常见的”\n”表示换行,”\t”表示Tab等。 )
应用:常用于正则表达式,对应着re模块等。
例: response = b'<h1>Hello World!</h1>'
b’ ’ 表示这是一个 bytes 对象,
作用:b" "前缀表示:后面字符串是bytes 类型。
用处:网络编程中,服务器和浏览器只认bytes 类型数据。
在 Python3 中,bytes 和 str 的互相转换方式是
str.encode('utf-8') bytes.decode('utf-8')
该种类型主要是格式化输出结果数据。
model = "text_cnn" loss = 0 epoch = 23 print(f'{model} train {epoch} epoch, loss {loss}')