python3 拼接字符串的7种方法
作者:寒爵 发布时间:2021-12-24 09:09:32
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种方法 网站的支持!
来源:https://www.cnblogs.com/Jimc/archive/2018/09/12/9634427.html


猜你喜欢
- 写在前面在一些接口请求的场景中,我们希望携带的数据不希望是以明文的方式提交的,也就是需要对参数做一些混淆或者加密处理,后端拿到数据后再进行解
- 使用MySQL,安全问题不能不注意。以下是MySQL提示的23个注意事项:1.如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就
- 本文实例讲述了python实现的系统实用log类。分享给大家供大家参考。具体如下:每个系统都必不可少会需要一个log类,方便了解系统的运行状
- 本文实例讲述了MySql采用GROUP_CONCAT合并多条数据显示的方法,分享给大家供大家参考。具体实现方法如下:假设有这样一个需求:1:
- 非原创:英文版混乱的标记语言XHTML2/HTML5源文地址:漫画英文版源文地址感谢我的同事Kevin Jaw的翻译。他的博客地址是:Kev
- 前言本文重点介绍 MySQL BIGINT 数据类型,并研究我们如何使用它来存储整数值。我们还将了解它的范围、存储大小和各种属性,包括有符号
- 有一个 Selenium 脚本(Python),它点击回复按钮使anonemail类出现。anonemail 类出现的时间各不相同。因此,我
- 1.问:在DW中如何设置页面边距为0?答:在DW中似乎没有直接设置的方法,你只有在Html文档中插入以
- gRPCgRPC远程过程调用框架是基于动作的模式,类似远程调用微服务。这使得gRPC成为一种围绕Protobufs构建的进程间通信(IPC)
- 所以特意写了这个配置文档,相信按照以下步骤你一定会成功的.错误的地方也希望各位指正. 本例是在wiondws XP下 php5.2.1(zi
- 反馈说在选择时间时会出现遮挡选择器的情况,阻碍操作 如下图1,需要修改xadmin 文件 ,在widgets.py --->第28行添
- 本文介绍了Python字符串格式化,主要有两种方法,分享给大家,具体如下用于字符串的拼接,性能更优。字符串格式化有两种方式:百分号方式、fo
- 内置方法 说明 __init__(self,...) 初始化对象,在创建新对象时调用 __del__(self) 释放对
- 一、目的之前在博文SQL Server数据库最小宕机迁移方案中提到了使用了完全备份+差异备份的功能完成了数据库的转移,但是这个方法在遇到了7
- 问题你想解析某个XML文档,文档中使用了XML命名空间。解决方案考虑下面这个使用了命名空间的文档:<?xml version=&quo
- 可试试下面这个方法,但要保证在FORM中使用的Input Name都和数据库中使用的是一样的:upfiles.asp<% &
- 现在的互联网上已经有很多能帮助设计师们的各种在线生成器,比如:图标(icon)生成器、背景生成器、按钮生成器和标志生成器等。Balkhis曾
- PHP simplexml_load_string() 函数实例转换形式良好的 XML 字符串为 SimpleXMLElement 对象,然
- 前言本系列文章开始介绍接口开源测试工具 --httprunner3的使用,基当前最新版本的3.1.6简介主要特点HttpRunner 是一款
- 越简单越丰富——极简网页设计视觉呈现技巧如何让杂乱又咄咄逼人的网页变得轻薄简洁而美观,又需保留完整功能、同时很好的区分出重点模块?这往往是让