Python 中字符串拼接的多种方法


Posted in Python onJuly 30, 2018

python拼接字符串一般有以下几种方法:

①直接通过(+)操作符拼接

s = 'Hello'+' '+'World'+'!'
print(s)

输出结果: Hello World!

使用这种方式进行字符串连接的操作效率低下,因为python中使用 + 拼接两个字符串时会生成一个新的字符串,生成新的字符串就需要重新申请内存,当拼接字符串较多时自然会影响效率。

②通过str.join()方法拼接

strlist=['Hello',' ','World','!']
print(''.join(strlist))

输出结果: Hello World!

这种方式一般常使用在将集合转化为字符串,''.join()其中''可以是空字符,也可以是任意其他字符,当是任意其他字符时,集合中字符串会被该字符隔开,例如:

​strlist=['Hello',' ','World','!']
print(','.join(strlist))

输出结果: Hello, ,World,!

③通过str.format()方法拼接

s='{} {}!'.format('Hello','World')
print(s)

输出结果: Hello World!

通过这种方式拼接字符串需要注意的是字符串中{}的数量要和format方法参数数量一致,否则会报错。

④通过(%)操作符拼接

s = '%s %s!' % ('Hello', 'World')
print(s)

输出结果: Hello World!

这种方式与str.format()使用方式基本一致。

⑤通过()多行拼接

s = (
  'Hello'
  ' '
  'World'
  '!'
)
print(s)

输出结果: Hello World!

python遇到未闭合的小括号,自动将多行拼接为一行。

⑥通过string模块中的Template对象拼接

from string import Template
s = Template('${s1} ${s2}!') 
print(s.safe_substitute(s1='Hello',s2='World'))

输出结果: Hello World!

Template的实现方式是首先通过Template初始化一个字符串。这些字符串中包含了一个个key。通过调用substitute或safe_subsititute,将key值与方法中传递过来的参数对应上,从而实现在指定的位置导入字符串。这种方式的好处是不需要担心参数不一致引发异常,如:

from string import Template
s = Template('${s1} ${s2} ${s3}!') 
print(s.safe_substitute(s1='Hello',s2='World'))

输出结果: Hello World ${s3}!

⑦通过F-strings拼接

在python3.6.2版本中,PEP 498 提出一种新型字符串格式化机制,被称为“字符串插值”或者更常见的一种称呼是 F-strings, F-strings提供了一种明确且方便的方式将python表达式嵌入到字符串中来进行格式化:

s1='Hello'
s2='World'
print(f'{s1} {s2}!')

输出结果: Hello World!

在F-strings中我们也可以执行函数:

def power(x):
  return x*x
x=4
print(f'{x} * {x} = {power(x)}')

输出结果: 4 * 4 = 16

而且F-strings的运行速度很快,比%-string和str.format()这两种格式化方法都快得多。

总结

以上所述是小编给大家介绍的Python 中字符串拼接的多种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
windows下安装python paramiko模块的代码
Feb 10 Python
Python爬虫之xlml解析库(全面了解)
Aug 08 Python
关于反爬虫的一些简单总结
Dec 13 Python
Python实现识别手写数字大纲
Jan 29 Python
详解python实现识别手写MNIST数字集的程序
Aug 03 Python
python使用__slots__让你的代码更加节省内存
Sep 05 Python
Python 3.8 新功能全解
Jul 25 Python
win10从零安装配置pytorch全过程图文详解
May 08 Python
python 浮点数四舍五入需要注意的地方
Aug 18 Python
通过实例解析Python文件操作实现步骤
Sep 21 Python
单身狗福利?Python爬取某婚恋网征婚数据
Jun 03 Python
python开发的自动化运维工具ansible详解
Aug 07 Python
TensorFlow Session会话控制&Variable变量详解
Jul 30 #Python
TensorFlow Session使用的两种方法小结
Jul 30 #Python
教你利用Python玩转histogram直方图的五种方法
Jul 30 #Python
对TensorFlow中的variables_to_restore函数详解
Jul 30 #Python
Python实现模拟浏览器请求及会话保持操作示例
Jul 30 #Python
tensorflow 打印内存中的变量方法
Jul 30 #Python
Python实现的多叉树寻找最短路径算法示例
Jul 30 #Python
You might like
php4的彩蛋
2006/10/09 PHP
php知道与问问的采集插件代码
2010/10/12 PHP
destoon实现资讯信息前面调用它所属分类的方法
2014/07/15 PHP
php返回当前日期或者指定日期是周几
2015/05/21 PHP
试用php中oci8扩展
2015/06/18 PHP
PHP使用mkdir创建多级目录的方法
2015/12/22 PHP
Smarty模板简单配置与使用方法示例
2016/05/23 PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
2017/09/16 PHP
Js的MessageBox
2006/12/03 Javascript
基于jQuery的试卷自动排版系统实现代码
2011/01/06 Javascript
异步安全加载javascript文件的方法
2015/07/21 Javascript
javascript实现base64 md5 sha1 密码加密
2015/09/09 Javascript
Vue.js结合bootstrap实现分页控件
2017/03/10 Javascript
使用jQuery.Pin垂直滚动时固定导航
2017/05/24 jQuery
js时间戳与日期格式之间相互转换
2017/12/11 Javascript
js使用ajax传值给后台,后台返回字符串处理方法
2018/08/08 Javascript
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
2019/04/28 jQuery
webpack结合express实现自动刷新的方法
2019/05/07 Javascript
Vue 设置axios请求格式为form-data的操作步骤
2019/10/29 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
Vue实现开关按钮拖拽效果
2020/09/22 Javascript
JavaScript TAB栏切换效果的示例
2020/11/05 Javascript
原生JS实现pc端轮播图效果
2020/12/21 Javascript
[00:55]2015国际邀请赛中国区预选赛5月23日——28日约战上海
2015/05/25 DOTA
利用Python和OpenCV库将URL转换为OpenCV格式的方法
2015/03/27 Python
部署Python的框架下的web app的详细教程
2015/04/30 Python
python针对不定分隔符切割提取字符串的方法
2018/10/26 Python
Python实现操纵控制windows注册表的方法分析
2019/05/24 Python
运动会广播稿200米
2014/01/27 职场文书
检讨书范文300字
2015/01/28 职场文书
2015年学校远程教育工作总结
2015/07/20 职场文书
2015年小学教科研工作总结
2015/07/20 职场文书
幼儿教师远程研修感悟
2015/11/18 职场文书
“学党章、守党纪、讲党规”学习心得体会
2016/01/14 职场文书
基于CSS3画一个iPhone
2021/04/21 HTML / CSS
git stash(储藏)的用法总结
2022/06/25 Servers