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 相关文章推荐
Python处理字符串之isspace()方法的使用
May 19 Python
python使用PIL模块实现给图片打水印的方法
May 22 Python
两个命令把 Vim 打造成 Python IDE的方法
Mar 20 Python
Python生成8位随机字符串的方法分析
Dec 05 Python
浅谈Django自定义模板标签template_tags的用处
Dec 20 Python
对python中的for循环和range内置函数详解
Apr 17 Python
django 外键model的互相读取方法
Dec 15 Python
pycharm修改界面主题颜色的方法
Jan 17 Python
python flask web服务实现更换默认端口和IP的方法
Jul 26 Python
Python 正则表达式爬虫使用案例解析
Sep 23 Python
Python编程快速上手——PDF文件操作案例分析
Feb 28 Python
Jupyter Notebook折叠输出的内容实例
Apr 22 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
php基础知识:类与对象(5) static
2006/12/13 PHP
PHP代码优化的53个细节
2014/03/03 PHP
ThinkPHP中url隐藏入口文件后接收alipay传值的方法
2014/12/09 PHP
php通过获取头信息判断图片类型的方法
2015/06/26 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
2017/04/03 PHP
IE8 引入跨站数据获取功能说明
2008/07/22 Javascript
javascript显示选择目录对话框的代码
2008/11/10 Javascript
学习javascript,实现插入排序实现代码
2011/07/31 Javascript
关于图片按比例自适应缩放的js代码
2011/10/30 Javascript
JavaScript中valueOf函数与toString方法深入理解
2012/12/02 Javascript
jQuery实现带有动画效果的回到顶部和底部代码
2015/11/04 Javascript
checkbox 选中一个另一个checkbox也会选中的实现代码
2016/07/09 Javascript
RGB和YUV 多媒体编程基础详细介绍
2016/11/04 Javascript
node使用Koa2搭建web项目的方法
2017/10/17 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
微信小程序点击图片实现长按预览、保存、识别带参数二维码、转发等功能
2019/07/20 Javascript
es6函数之尾调用优化实例分析
2020/04/25 Javascript
vue实现学生信息管理系统
2020/05/30 Javascript
微信小程序多列表渲染数据开关互不影响的实现
2020/06/05 Javascript
在Python的Django框架中实现Hacker News的一些功能
2015/04/17 Python
Python 遍历列表里面序号和值的方法(三种)
2017/02/17 Python
Python实现定时自动关闭的tkinter窗口方法
2019/02/16 Python
python argparse传入布尔参数false不生效的解决
2020/04/20 Python
Python 如何测试文件是否存在
2020/07/31 Python
HTML5在微信内置浏览器下右上角菜单的调整字体导致页面显示错乱的问题
2021/01/19 HTML / CSS
英国领先的瓷砖专家:Walls and Floors
2018/04/27 全球购物
iPad和Surface Pro蓝牙键盘:Brydge
2018/11/10 全球购物
屈臣氏官方旗舰店:亚洲享负盛名的保健及美妆零售商
2019/03/15 全球购物
香港演唱会订票网站:StubHub香港
2019/10/10 全球购物
汽修专业学生自我鉴定
2013/11/16 职场文书
2014年学习厉行节约反对浪费思想汇报
2014/09/10 职场文书
公务员四风问题对照检查材料整改措施
2014/09/26 职场文书
优秀党员申报材料
2014/12/18 职场文书
《失物招领》教学反思
2016/02/20 职场文书
Redis Cluster 字段模糊匹配及删除
2021/05/27 Redis
Python保存并浏览用户的历史记录
2022/04/29 Python