首页 > 编程语言 >Python字符串前缀u、r、b、f含义

Python字符串前缀u、r、b、f含义

时间:2023-10-25 10:01:43浏览次数:32  
标签:前缀 Python bytes str 字符串 Python3 前加

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前缀来表示原生字符串。

标签:前缀,Python,bytes,str,字符串,Python3,前加
From: https://www.cnblogs.com/Im-Victor/p/17786428.html

相关文章

  • 用python计算圆周率PI
    fromrandomimportrandomfrommathimportsqrtimporttimeDARTS=10**7hits=0.0a=1start=time.perf_counter()foriinrange(1,DARTS+1):x,y=random(),random()dist=sqrt(x**2+y**2)ifdist<=1.0:hits=hits+1ifi==DARTS*......
  • Python贝叶斯MCMC:Metropolis-Hastings、Gibbs抽样、分层模型、收敛性评估
     全文链接:https://tecdat.cn/?p=33961原文出处:拓端数据部落公众号在常规的马尔可夫链模型中,我们通常感兴趣的是找到一个平衡分布。MCMC则是反过来思考——我们将平衡分布固定为后验分布:并寻找一种转移核,使其收敛到该平衡分布。岛屿示例首先提供一个示例,以具体展示Metropo......
  • 使用BBP算法计算π,Python实现
     BBP算法(Bailey-Borwein-Plouffe算法)是一种用于计算π的算法,它可以直接计算出π的十六进制表示的任意一位。BBP算法由SimonPlouffe于1995年提出,基于DavidBailey和PeterBorwein在1995年的工作。BBP算法的基本思想是使用级数展开,将π表示为一个无限级数的和。具体来说,BBP算法......
  • 用Python发一个优雅的朋友圈,1行代码搞定
    大家好,这里是程序员晚枫,这段时间给大家分享多个微信自动化的代码:今天再给大家分享一个:用Python发一个好看的朋友圈的代码。效果展示最近很多P图软件实现了一个效果:把一张图片分成9张,如下图所示。......
  • python进阶知识体系笔记,整理近200页,共14大体系 第(1)期
    本文从14大模块展示了python高级用的应用。分别有Linux命令,多任务编程、网络编程、Http协议和静态Web编程、html+css、JavaScript、jQuery、MySql数据库的各种用法、python的闭包和装饰器、mini-web框架、正则表达式等相关文章的详细讲述。完整版笔记直接地址:请移步这里共14......
  • Python 利用pandas 和 matplotlib绘制柱状图
    当你需要展示数据时,图表是一个非常有用的工具。Python中的pandas和matplotlib库提供了丰富的功能,可以帮助你轻松地绘制各种类型的图表。本文将介绍如何使用这两个库,绘制一个店铺销售数量的柱状图,并添加各种元素,如数据标签、图例、网格线等。准备工作在开始之前,你需要安装p......
  • 使用Python随机查询数据库中10个信息然后删除这10个信息
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【刘苏秦】问了一个Python数据库数据处理的问题,一起来看看吧。cursor=connect.cursor()sql="SELECT*FROMinfoswherestatus=''"cursor.execute(sql)result=random.sample(cursor.fetchall(),10)result=[d......
  • # yyds干货盘点 #使用Python随机查询数据库中10个信息然后删除这10个信息
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【刘苏秦】问了一个Python数据库数据处理的问题,一起来看看吧。cursor=connect.cursor()sql="SELECT*FROMinfoswherestatus=''"cursor.execute(sql)result=random.sample(cursor.fetchall(),10)result=[dict(i......
  • 代码随想训练营第十四天(Python)| 层序遍历 10 、● 226.翻转二叉树 、101.对称二叉树 2
    层序遍历1、迭代法,使用队列classSolution:deflevelOrder(self,root:Optional[TreeNode])->List[List[int]]:res=[]ifrootisNone:returnresqueue=[root]whilequeue:n=len(queue)......
  • python all()详解
    python内置函数all可用于判断传入的可迭代参数iterable中的所有元素是否都为True,如果是则返回True,反之返回False。如果可迭代对象是空的,也会返回True。在判断元素是否为True时,只要元素不是0、空、None、False,就视为True。all()函数接受一个可迭代对象作为参数,仅当可迭代对象......