Python字符串前缀urbf含义

Posted 星空物语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python字符串前缀urbf含义相关的知识,希望对你有一定的参考价值。

1、字符串前加 u

例子:

u"字符串中有中文"

含义:

前缀u表示该字符串是unicode编码,Python2中用,用在含有中文字符的字符串前,防止因为编码问题,导致中文出现乱码。另外一般要在文件开关标明编码方式采用utf8。

Python3中,所有字符串默认都是unicode字符串。

 

2、字符串前加 r

例子:

r"\\n\\t"

含义:

在普通字符串中,反斜线是转义符,代表一些特殊的内容,如换行符\\n。

前缀r表示该字符串是原始字符串,即\\不是转义符,只是单纯的一个符号。

常用于特殊的字符如换行符、正则表达式、文件路径。

注意不能在原始字符串结尾输入反斜线,否则Python不知道这是一个字符还是换行符(字符串最后用\\表示换行),会报错:

SyntaxError: EOL while scanning string literal

 

那如果是一个文件夹路径就是以\\结尾怎么办呢,可以再接一个转义\\的字符串:

>>>print r\'C:\\Program File\\my\\path\'\'\\\\\'
C:\\Program File\\my\\path\\

 

3、字符串前加 b

例子:

b\'<h1>Hello World!</h1>\'

含义:

前缀b表示该字符串是bytes类型。

用在Python3中,Python3里默认的str是unicode类。Python2的str本身就是bytes类,所以可不用。

常用在如网络编程中,服务器和浏览器只认bytes类型数据。如:send 函数的参数和 recv 函数的返回值都是 bytes 类型。

在 Python3 中,bytes 和 str 的互相转换方式是

str.encode(\'utf-8\')
bytes.decode(\'utf-8\')

 

4、字符串前加 f

例子:

>>> account = \'测试工程师小站\'
>>> month = \'30\'
>>> f\'我的微信公众号是:{account},已经连续发文{int(month) * 5}天啦!\'
\'我的微信公众号是:测试工程师小站,已经连续发文150天啦!\'

 

含义:

Python3.6新加特性,前缀f用来格式化字符串。可以看出f前缀可以更方便的格式化字符串,比format()方法可读性高且使用方便。

而且加上f前缀后,支持在大括号内,运行Python表达式。

你还可以用fr前缀来表示原生字符串。

 

--------------------------------------------------------------------------------

关注微信公众号(测试工程师小站)即可在手机上查阅,并可接收更多测试分享,发送【测试资料】更可获取百G测试教程~

以上是关于Python字符串前缀urbf含义的主要内容,如果未能解决你的问题,请参考以下文章

VSCode创建自定义用户片段

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途

JavaScript笔试题(js高级代码片段)

如何通过Python中的ascii代码判断另一个字符串的字符串前缀?

Python中的中缀到前缀转换

python+spark程序代码片段