python字符串_Python格式化字符串常用操作

本文详细探讨了Python字符串格式化的发展,从早期的百分号操作符到2.6的`format()`函数,再到3.6的f-string的便捷性。通过实例展示了不同版本的格式化方式,并介绍了f-string如何简化表达式嵌入。
摘要由CSDN通过智能技术生成
52c1bc13154cb664e421ffb8cbee8286.gif 前言

字符串的格式化、以及增、删、改、查、并、分,无论写什么程序都是一个非常重要的操作,熟练的使用可以让程序变得整洁,对于输出结果的格式能很好的统一性。

0 1

格式化字符串

在python的2.x版本中格式化是利用“%”来确定的。%d代表着十进制整数,%s代表着通过str()字符串转换来格式化。

应用实例

# 例如以下的3个变量,我们进行赋值,再格式化name ="L棕榈泉广场"cellid = 130enodebid = 335104str = "RMV EUTRANEXTERNALCELL:ENODEBID=%d,CELLID=%d;{%s}" % (enodebid, cellid, name)print(str)

应用实例

44bcbf40dfc7ba9854773e4fc2cb4fae.png

来到python2.6版本后,格式化进行了新的改造,引入了format()函数,

新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 % 。format 函数可以接受不限个参数,位置可以不按顺序。

应用实例

# 例如以下的3个变量,我们进行赋值,再格式化name ="L棕榈泉广场"cellid = 130enodebid = 335104# 一般形式str = "RMV EUTRANEXTERNALCELL:ENODEBID={},CELLID={};{}".format(enodebid, cellid, name)# 指定位置str2 = "RMV EUTRANEXTERNALCELL:ENODEBID={0},CELLID={1};{2}".format(enodebid, cellid, name)# 保留两位小数print("{:.2f}".format(3.1415926))print(str)print(str2)

应用实例

688dd8ca97f1b7f96d6c776e64a7f53c.png

而到了python3.6版本之后,又将这一功能升级,f -string提供了一种方法,可以在字符串文字中嵌入表达式,使用最小的语法。”应该注意的是,f-string实际上是在运行时计算的表达式,而不是一个常量值。在Python源代码中,f-string是一个文本字符串,前缀为f,其中包含括号内的表达式。表达式被替换为它们的值。试想如果你有很多的值,总不能写一堆%号吧。

应用实例

# 例如以下的3个变量,我们进行赋值,再格式化name ="L棕榈泉广场"cellid = 130enodebid = 335104# 一般形式str = f"RMV EUTRANEXTERNALCELL:ENODEBID={enodebid},CELLID={cellid};{name}"# 指定位置str2 = f"RMV EUTRANEXTERNALCELL:ENODEBID={enodebid},CELLID={cellid};{name}"print(str)print(str2)

输出结果

f3772b593032e4edafc4131fb636262e.png

而到了最新的3.8版本f-strings 增加了 = 说明符, f'{expr=}' 会被扩展为表达式的文本,加上一个等号, 和一个执行表达式的结果,我的版本不是最新的所以,不能被执行。但形式是这样。

# 例如以下的3个变量,我们进行赋值,再格式化name ="L棕榈泉广场"cellid = 130enodebid = 335104a = f"{name = },{cellid = },{enodebid = }"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值