首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

字符串格式化的5种方法,第3种简单又灵活

大家好,欢迎来到 Crossin的编程教室 !

在开发程序过程中,经常会需要将一些数据整合到一起输出。

比如现在有3个变量,分别表示姓名、年龄、地点,要把它们放在一句话里显示出来。

如果这几个变量都是字符串,那倒还好办,直接用加号(+)相加就可以:

输出:

如果不是变量,甚至连加号都不用,Python连续的字符串默认会自动拼接。

输出:

但如果这里面有其他类型的变量,比如把 age 换成整数类型,直接相加就会报错了:

报错:

这是因为数字和字符串并不能直接相加。

要解决这个问题并不难,Python 处理字符串还是相当灵活的。这里就给大家演示5种常用的方法。

1. str

既然类型不同相加时会报错,那只要通过 str 函数把非字符串变量转成字符串就可以了。

2. 逗号

Python 中的 print 方法支持输出多个值或者变量,用逗号(,)隔开就可以了。因为是分别输出,不存在计算,所以类型不一样也没关系:

但这种方法仅限于 print 输出,并不会得到一个合并后的新字符串。

3. f-string

Python 提供了一种很便捷的字符串格式化方法,可以将变量按照指定位置嵌入到一个字符串模板中。

方法就是在字符串的引号前面加上一个字母 f,然后把里面要用到的变量放在大括号({})里:

这个方法叫做 f-strings,即简单又灵活,是我最喜欢的字符串格式化方法。

在格式化的时候,还可以对格式做更多设定,比如小数的保留位数:

输出:

不过,它是 python 3.6 才有的语法,之前的版本不支持。

4. format

假如你不得不用一个更老版的 python,还有一种类似 f-strings 的字符串格式化方法 .format。

它的写法是把需要填充变量的地方用大括号留好位置,然后在字符串模板后面调用 .format(),把变量放进去:

5. %

还有一种字符串格式化方法是在字符串模板中需要填充 str 变量的地方写上 %s,填充 int 变量的地方写上 %d,填充 float 变量的地方写上 %f,然后在字符串后面加上 % (),把变量放进去:

用 % 进行格式化是很传统的一种方式,不仅是 python,其他很多语言也支持这种写法。所以即便你觉得麻烦不想用它,也很可能在别人的代码里看到它。

对于上述的后3种字符串格式化,都还可以通过添加参数的方法设定格式化的细节。今天这里就不展开细说了。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OybC1V_kriLRhE_piuPyQbjQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券