python3 拼接字符串的7种方法


Posted in Python onSeptember 12, 2018

Python的3.0版本,常被称为Python 3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下兼容。

1、直接通过(+)操作符拼接

>>> 'Hello' + ' ' + 'World' + '!'
'Hello World!'

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

2、通过str.join()方法拼接

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

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

3、通过str.format()方法拼接

>>> '{} {}!'.format('Hello', 'World')
'Hello World!'

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

4、通过(%)操作符拼接

>>> '%s %s!' % ('Hello', 'World')
'Hello World!'

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

5、通过()多行拼接

>>> (
...   'Hello'
...   ' '
...   'World'
...   '!'
... )
'Hello World!'

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

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

>>> from string import Template
>>> s = Template('${s1} ${s2}!') 
>>> 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}!') 
>>> s.safe_substitute(s1='Hello',s2='World')
'Hello World ${s3}!'

7、通过F-strings拼接

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

>>> s1 = 'Hello'
>>> s2 = 'World'
>>> f'{s1} {s2}!'
'Hello World!'

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

>>> def power(x):
...   return x*x
... 
>>> x = 5
>>> f'{x} * {x} = {power(x)}'
'5 * 5 = 25'

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

总结

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

Python 相关文章推荐
python插入排序算法实例分析
Jul 03 Python
python发送邮件实例分享
Jul 28 Python
python opencv检测目标颜色的实例讲解
Apr 02 Python
Python实现定时自动关闭的tkinter窗口方法
Feb 16 Python
浅谈python多进程共享变量Value的使用tips
Jul 16 Python
详解numpy.meshgrid()方法使用
Aug 01 Python
Python判断字符串是否xx开始或结尾的示例
Aug 08 Python
关于pytorch中网络loss传播和参数更新的理解
Aug 20 Python
WxPython实现无边框界面
Nov 18 Python
Python实现常见的几种加密算法(MD5,SHA-1,HMAC,DES/AES,RSA和ECC)
May 09 Python
python3中确保枚举值代码分析
Dec 02 Python
python数字图像处理数据类型及颜色空间转换
Jun 28 Python
python简单操作excle的方法
Sep 12 #Python
使用python实现快速搭建简易的FTP服务器
Sep 12 #Python
python ftp 按目录结构上传下载的实现代码
Sep 12 #Python
python3结合openpyxl库实现excel操作的实例代码
Sep 11 #Python
python创建文件备份的脚本
Sep 11 #Python
python实现飞机大战
Sep 11 #Python
pygame实现简易飞机大战
Sep 11 #Python
You might like
ThinkPHP采用GET方式获取中文参数查询无结果的解决方法
2014/06/26 PHP
php多任务程序实例解析
2014/07/19 PHP
PHP使用NuSOAP调用Web服务的方法
2015/07/18 PHP
javascript得到XML某节点的子节点个数的脚本
2008/10/11 Javascript
Jquery实现点击切换图片并隐藏显示内容(2种方法实现)
2013/04/11 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
2014/04/30 Javascript
JS 在指定数组中随机取出N个不重复的数据
2014/06/10 Javascript
JavaScript中的闭包(Closure)详细介绍
2014/12/30 Javascript
解决jQuery ajax请求在IE6中莫名中断的问题
2016/06/20 Javascript
Spring MVC中Ajax实现二级联动的简单实例
2016/07/06 Javascript
微信小程序 wxapp内容组件 progress详细介绍
2016/10/31 Javascript
javascript简单链式调用案例分析
2017/05/10 Javascript
基于hover的用法实例(推荐)
2017/07/04 Javascript
浅谈Vue下使用百度地图的简易方法
2018/03/23 Javascript
Vue 401配合Vuex防止多次弹框的案例
2020/11/11 Javascript
详解python字节码
2018/02/07 Python
Python学习笔记之列表和成员运算符及列表相关方法详解
2019/08/22 Python
详解一种用django_cache实现分布式锁的方式
2019/09/01 Python
python bluetooth蓝牙信息获取蓝牙设备类型的方法
2019/11/29 Python
python GUI库图形界面开发之PyQt5开发环境配置与基础使用
2020/02/25 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
Original Penguin英国官方网站:美国著名休闲时装品牌
2016/10/30 全球购物
巴西宠物店在线:Geração Pet
2017/05/31 全球购物
大学应届毕业生个人求职信
2013/09/23 职场文书
日语专业个人的求职信
2013/12/03 职场文书
老师的检讨书
2014/02/23 职场文书
机关节能减排实施方案
2014/03/17 职场文书
请假条怎么写
2014/04/10 职场文书
优秀护士演讲稿
2014/04/30 职场文书
学校感恩教育活动总结
2014/07/07 职场文书
公司领导班子召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
党的群众路线教育实践活动整改落实情况自查报告
2014/10/28 职场文书
承诺函范文
2015/01/21 职场文书
面试通知单大全
2015/04/20 职场文书
2015元旦感言
2015/12/09 职场文书
详解Html5项目适配系统深色模式方案总结
2021/04/14 HTML / CSS