Python字符串拼接的4种方法实例
作者:三玹 发布时间:2023-01-30 18:57:15
在程序实际应用中,少不了要进行字符串拼接的操作。下面介绍一下Python语言中四种字符串拼接的方式。
1. 算术运算符拼接
在Python中算术运算符一共有七种种,分别是+、-、*、/、//、**和%。其中+和*不仅可以用来进行算数计算,也可以用来字符串拼接。
(1)+算术运算符
+运算符在Python中可以用作数学计算,例如:
num1 = 1
num2 = 2
print(num1 + num2) # 3
同样也可以用来进行字符串拼接:
s1 = '我是'
s2 = '大帅比'
print(s1 + s2) # 我是大帅比
但是在使用+运算符来进行字符串拼接的时候,只能是字符串和字符串进行拼接,无法和整形(int)、浮点型(float)以及布尔型(bool)进行拼接。
(2) * 算术运算符
当需要输出多个同样字符的时候,可以使用*运算符来偷个小懒,例如:
s1 = '-'
print(s1 * 30)
# ------------------------------
print(s1 * True)
# -
print(s1 * False)
# (虽然没有显示,但实际上有输出一个空字符串)
但是*运算符和+运算符一样,在进行字符串拼接的时候是有限制的,不能和字符串、浮点型(float)进行拼接,其中布尔型的值会默认转化为整型(True为1,False为0)来进行计算拼接。
2、format方法
在Python中,字符串友提供一个format的方法,可以通过在字符串中留空(即一个{}),然后在format方法中按顺序填入相应参数,来实现拼接。
s1 = '小明'
s2 = 18
s3 = 1.75
s4 = True
print('{}今年{}岁了,身高{}米,是个成年的{}男人。'.format(s1, s2, s3, s4))
# 小明今年18岁了,身高1.75米,是个成年的True男人。
在这里,format可以拼接字符串、整型、浮点型以及布尔型的值,这里面布尔型的值会默认转化为字符串类型来进行拼接。
值得注意的是:format中的参数必须是按坑填入,坑只能少,不能比值多;值可以尽量多,但是不能比坑少,否则就会报错。
s1 = '小明'
s2 = 18
s3 = 1.75
s4 = True
print('{}今年{}岁了,身高{}米,是个成年的男人。'.format(s1, s2))
###
IndexError: Replacement index 2 out of range for positional args tuple
3、百分号操作符
Python还可以通过百分号加上一个字母(如%s、%d等等),来实现字符串的拼接。
s1 = 'python'
print('人生苦短,我只用%s'%s1)
# 人生苦短,我只用Python
当然百分号操作符还可以通过百分号加上一个元组来进行多个字符传入:
s1 = '张三'
s2 = 24
s3 = 1.8
s4 = True
print('我叫%s,今年%s岁,是个%s米的大帅比,你觉得我说的%s吗?'%(s1, s2, s3, s4))
# 我叫张三,今年24岁,是个1.8米的大帅比,你觉得我说的True吗?
在这里,%s可以是字符串、整型、浮点型或者布尔型,这些都会被默认转为字符串类型。但如果是其他如%d,则不能跟字符串,其他类型会被转化为整型,浮点型只取整数,布尔型只取1或者0。
常见的格式化符号
格式符号 | 转换 |
---|---|
%s | 通过str()字符串转换来格式化 |
%u | 无符号的十进制整数 |
%d | 有符号的十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数,小写字母 |
%X | 十六进制整数,大写字母 |
%e | 浮点数字(科学计数法) |
%E | 浮点数字(科学计数法,用E代替e) |
%f | 浮点实数 |
%g | 浮点数字(根据值的大小采用%e或%f) |
%G | 浮点数字(类似于%g) |
注意: 和format不一样的是,百分号是有几个坑,就得给他安排几个值,值多或者值少,都会产生报错。
4、特殊符号f
在Python还有一种非常有意思的写法,就是在字符串前面加上特定字母,就可以实现一些功能,如加上r 取消转义符号的效果,加上 f 进行字符串格式化。
s1 = '博士'
s2 = 30
print(f'小红是一个{s1},刚毕业就获得了一个年薪{s2}万的工作。')
# 小红是一个博士,刚毕业就获得了一个年薪30万的工作。
f 和 format 方法有点相似,也是挖坑,但是 f 是现挖现填,相比 format 来说更不容易填错坑。
附:常见字符串去除空格的方法总结
去除字符串开头和结尾的空格,使用strip()方法
a = " a b c "
a.strip()
# 'a b c'
去除字符串开头的空格,lstrip()方法
a = " a b c "
a.lstrip()
# 'a b c '
去除字符串结尾的空格,rstrip()方法
a = " a b c "
a.rstrip()
# ' a b c'
来源:https://blog.csdn.net/jhdddd/article/details/124281653
猜你喜欢
- 本文介绍了网页中插入视频播放的代码全集:有avi格式的视频,mpg格式,smi格式,rm格式,wmv格式,wma格式,Windows Med
- 2009年2月24日,Safari 4.0 beta版正式发布,Safari从它的3.2版本开始就已经支持所有的CSS选择器(包括最新的CS
- 一、介绍实现的是把某个文件夹下的所有文件名提取出来,放入一个列表,在与excel中的某列进行对比,如果一致的话,对另一列进行操作,比如我们在
- 由于Pytorch不像TensorFlow有谷歌巨头做维护,很多功能并没有很高级的封装,比如说没有tf.one_hot函数。本篇介绍将一个m
- 大家好,今天跟大家分享一个用Python实现的学生学籍管理系统:该代码主体由五个函数组成:1.add_stu() 添加2.del_stu()
- 目录项目介绍已有功能环境安装Windows用看这里ubuntu用户看这里使用方式:主要代码项目地址项目介绍可以下载doc,ppt,pdf.对
- 说下防止PHPDDOS发包的方法 if (eregi("ddos-udp",$read)) { fputs($verbi
- 01.简介当我们使用的鱼眼镜头视角大于160°时,OpenCV中用于校准镜头“经典”方法的效果可能就不是和理想了。即使我们仔细遵循OpenC
- 字符串在Python内部的表示是Unicode编码,因此,在做编码转换时,通常需要以Unicode作为中间编码,即先将其他编码的字符串解码(
- 将视图与缓存系统进行了耦合,从几个方面来说并不理想。 例如,你可能想在某个无缓存的站点中重用该视图函数,或者你可能想将该视图发布给那些不想通
- 所谓线性最小二乘法,可以理解为是解方程的延续,区别在于,当未知量远小于方程数的时候,将得到一个无解的问题。最小二乘法的实质,是保证误差最小的
- 我们前期开发了一个只有公司客服人员才能使用的系统——有限的几个客服人员。就是这有限的几个客服人员前几天突然就提出这样的问题:我们每隔很短一段
- 一.使用DOM生成和读取XML文件 实例一: <?php //Creates XML string and XML document
- 在CMD控制台进入Jupyter notebook之前,先激活安装了该模块的配置环境,再启动jupyter notebook,问题完美解决。
- sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 s
- 在数据处理过程中比如从CSV文件中导入数据data_df = pd.read_csv("names.csv")在处理之前
- 本文实例讲述了Python实现批量读取图片并存入mongodb数据库的方法。分享给大家供大家参考,具体如下:我的图片放在E:\image\中
- PHP simplexml_load_string() 函数实例转换形式良好的 XML 字符串为 SimpleXMLElement 对象,然
- 遇到一个很奇怪的现象,在给页面添加“打印”按钮时,发现网页在IE6下居然不能打印,弹出一个对话框,遇到脚本错误。查看错误详细:定位到 url
- 一般语言都提供了按字典排序的API,比如跟微信公众平台对接时就需要用到字典排序。按字典排序有很多种算法,最容易想到的就是字符串搜索的方式,但