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求crc32值的方法
Oct 05 Python
Python获取某一天是星期几的方法示例
Jan 17 Python
Django入门使用示例
Dec 12 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
Oct 11 Python
python 实现将txt文件多行合并为一行并将中间的空格去掉方法
Dec 20 Python
django项目登录中使用图片验证码的实现方法
Aug 15 Python
django实现模型字段动态choice的操作
Apr 01 Python
django使用channels实现通信的示例
Oct 19 Python
Ubuntu配置Pytorch on Graph (PoG)环境过程图解
Nov 19 Python
如何通过安装HomeBrew来安装Python3
Dec 23 Python
Jupyter notebook 更改文件打开的默认路径操作
May 21 Python
python内置模块之上下文管理contextlib
Jun 14 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
第十一节--重载
2006/11/16 PHP
PHP nl2br函数 将换行字符转成 <br>
2009/08/21 PHP
php 的加密函数 md5,crypt,base64_encode 等使用介绍
2012/04/09 PHP
采集邮箱的php代码(抓取网页中的邮箱地址)
2012/07/17 PHP
PHP小程序支付功能完整版【基于thinkPHP】
2019/03/26 PHP
JS对外部文件的加载及对IFRMAME的加载的实现,当加载完成后,指定指向方法(方法回调)
2011/07/04 Javascript
JQuery实现简单验证码提示解决方案
2012/12/20 Javascript
js获取 type=radio 值的方法
2014/05/09 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
2014/09/22 Javascript
JavaScript日期类型的一些用法介绍
2015/03/02 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
浅析jquery如何判断滚动条滚到页面底部并执行事件
2016/04/29 Javascript
jQuery实现图片轮播效果代码
2016/09/27 Javascript
jQuery的ready方法实现原理分析
2016/10/26 Javascript
Vue2.x中的父组件传递数据至子组件的方法
2017/05/01 Javascript
js canvas实现适用于移动端的百分比仪表盘dashboard
2017/07/18 Javascript
Angular模板表单校验方法详解
2017/08/11 Javascript
利用JS制作万年历的方法
2017/08/16 Javascript
Angular.js中window.onload(),$(document).ready()的写法浅析
2017/09/28 Javascript
用ES6的class模仿Vue写一个双向绑定的示例代码
2018/04/20 Javascript
node中的cookie的具体使用
2018/09/13 Javascript
基于ajax实现上传图片代码示例解析
2020/12/03 Javascript
wxPython中文教程入门实例
2014/06/09 Python
python实现的登录和操作开心网脚本分享
2014/07/09 Python
Python内建函数之raw_input()与input()代码解析
2017/10/26 Python
Python使用Turtle模块绘制五星红旗代码示例
2017/12/11 Python
Python编程把二叉树打印成多行代码
2018/01/04 Python
python selenium循环登陆网站的实现
2019/11/04 Python
Python爬虫爬取微信朋友圈
2020/08/06 Python
python drf各类组件的用法和作用
2021/01/12 Python
在浏览器端如何得到服务器端响应的XML数据
2012/11/24 面试题
自我鉴定总结
2014/03/24 职场文书
关于中国梦的演讲稿
2014/04/23 职场文书
销售行政专员岗位职责
2014/06/10 职场文书
公司委托书怎么写
2014/08/02 职场文书
搞笑结婚保证书
2015/05/08 职场文书