python3 拼接字符串的7种方法

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种方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • Python3字符串encode与decode的讲解

    大家好,很久没更新了,也是年底了最近比较忙,同时也在研究python的其他内容,毕竟是python小白,自学道路艰难. 好了今天和大家一起探讨下python3编码过程中对的一些转码事宜. python3中对文本和二进制做了比较清晰的区分.python3默认编码为unicode,由str类型进行表示.二进制数据使用byte类型表示,所以不会将str和byte混在一起.在实际应用中我们经常需要将两者进行互转 有几点需要注意: 1:字符串通过编码转换为字节码,字节码通过解码转换为字符串 str--->

  • python3正则提取字符串里的中文实例

    如下所示: # -*- coding: utf-8 -*- import re #过滤掉除了中文以外的字符 str = "hello,world!!%[545]你好234世界..." str = re.sub("[A-Za-z0-9\!\%\[\]\,\.]", "", str) print(str) #提取字符串里的中文,返回数组 pattern="[\u4e00-\u9fa5]+" regex = re.compile(p

  • Python3.2中的字符串函数学习总结

    Sequence Types sequence类型有六种:strings, byte sequences (bytes objects), byte arrays(bytearray objects), list, tuple, range objects. sequence类型都支持的通用操作: 成员检查:in.not in 连接:+ 复制:* 下标取值:s[i] 切片:s[i : j] 长度检查:len(s) 最小值:min(s) 最大值:max(s) 索引取值:s.index(i) 字符串

  • python3实现字符串操作的实例代码

    python3字符串操作 x = 'abc' y = 'defgh' print(x + y) #x+y print(x * 3) #x*n print(x[2]) #x[i] print(y[0:-1]) #str[i:j] #求长度 >>> len(x) 11 #将其他类型转换为字符串 >>> str(123) '123' #将数字转为对应的utf-8字符 >>> chr(97) 'a' #将字符转为对应的数字 >>> ord('

  • python3中str(字符串)的使用教程

    本文主要介绍的是python3中对str(字符串)的使用操作总结,文中介绍的非常详细,需要的朋友们下面来一起看看吧. __add__函数 (在后面追加字符串) s1 ='Hello' s2 = s1.__add__(' boy!') print(s2) #输出:Hello boy! __contains__(判断是否包含某字符串,包含则返回True) s1 = 'Hello' result = s1.__contains__('He') print(result) #输出:True __eq__

  • Python3中的列表,元组,字典,字符串相关知识小结

    一.知识概要 1. 列表,元组,字典,字符串的创建方式 2. 列表,元组,字典,字符串的方法调用 3. 列表,元组,字典,字符串的常规用法 二.列表 # 列 表 # 列表基础 list_1 = ['a','b','c','d','e','f'] list_2 = ['apple','banana','watermelon','strawberry','banana','apple'] print(list_1) print("##########") # 列表得下标是从0开始的,之后的

  • python3.x 将byte转成字符串的方法

    如下所示: result = str(要转换的变量名, encoding='utf-8') 例如: result = str(request, encoding='utf-8') 以上这篇python3.x 将byte转成字符串的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Python3.5字符串常用操作实例详解

    本文实例总结了Python3.5字符串常用操作.分享给大家供大家参考,具体如下: 一.输入与输出 #输入与输出 str = input("请输入任意字符:") print(type(str)) #input获取的数据类型皆为字符串 print(str) 运行结果: 请输入任意字符:abc <class 'str'> abc #格式化输出 name = "liu" age = 18 print("My name is %s, and I'm %d

  • python3 拼接字符串的7种方法

    Python的3.0版本,常被称为Python 3000,或简称Py3k.相对于Python的早期版本,这是一个较大的升级.为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下兼容. 1.直接通过(+)操作符拼接 >>> 'Hello' + ' ' + 'World' + '!' 'Hello World!' 使用这种方式进行字符串连接的操作效率低下,因为python中使用 + 拼接两个字符串时会生成一个新的字符串,生成新的字符串就需要重新申请内存,当拼接字符串较多时自然会

  • Python拼接字符串的7种方法总结

    前言 忘了在哪看到一位编程大牛调侃,他说程序员每天就做两件事,其中之一就是处理字符串.相信不少同学会有同感. 在Python中,我们经常会遇到字符串的拼接问题,几乎任何一种编程语言,都把字符串列为最基础和不可或缺的数据类型.而拼接字符串是必备的一种技能.今天,我跟大家一起来学习Python拼接字符串的七种方式. 下面话不多说了,来一起看看详细的介绍吧 1.来自C语言的%方式 print('%s %s' % ('Hello', 'world')) >>> Hello world %号格式化

  • java中拼接字符串的5种方法效率对比

    前言 最近写一个东东,可能会考虑到字符串拼接,想了几种方法,但对性能未知,所以下面就来测试下面,话不多说了,来一起看看详细的介绍吧. 示例代码 public class Test { List<String> list = new ArrayList<>(); @Before public void init(){ IntStream.range(0, 100000).forEach((index) -> { list.add("str" + index)

  • python3反转字符串的3种方法(小结)

    前段时间看到letcode上的元音字母字符串反转的题目,今天来研究一下字符串反转的内容.主要有三种方法: 1.切片法(最简洁的一种) #切片法 def reverse1(): s=input("请输入需要反转的内容:") return s[::-1] reverse1() #运行结果 In [23]: def reverse1(): ...: s=input("请输入需要反转的内容:") ...: return s[::-1] ...: ...: reverse1(

  • python列表元素拼接成字符串的4种方法

    目录 前言 一.使用join()方法连接列列表 二.利用for循环连接列表 三.对列表进行切片然后连接 四.使用zip压缩多个列表为一个列表 前言 我们在分析列表数据时,常常需要对列表数据进行输出或多列表关联拼接.直接使用列表,列表中的各元素以逗号分隔,每个元素包含引号.如何连接列表中的元素为一个字符串呢?文章主要介绍python 连接列表元素的4种方法,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下. 一.使用join()方法连接列列表 使用join()方法可将列表中的元素以

  • Python拼接字符串的7种方式详解

    忘了在哪看到一位编程大牛调侃,他说程序员每天就做两件事,其中之一就是处理字符串.相信不少同学会有同感. 几乎任何一种编程语言,都把字符串列为最基础和不可或缺的数据类型.而拼接字符串是必备的一种技能.今天,我跟大家一起来学习Python拼接字符串的七种方式. 1.来自C语言的%方式 print('%s %s' % ('Hello', 'world')) >>> Hello world %号格式化字符串的方式继承自古老的C语言,这在很多编程语言都有类似的实现.上例的%s是一个占位符,它仅代表

  • PHP生成随机字符串(3种方法)

    如用户注册生成随机密码,用户重置密码也需要生成一个随机的密码.随机密码也就是一串固定长度的字符串,文章整理了几种生成随机字符串的方法. 方法一 1.在33 – 126中生成一个随机整数,如35. 2.将35转换成对应的ASCII码字符,如35对应#. 3.重复以上1.2步骤n次,连接成n位的密码. 该算法主要用到了两个函数,mt_rand ( int $min , int $max )函数用于生成随机整数,其中 $min – $max 为 ASCII 码的范围,这里取 33 -126 ,可以根据

  • Python格式化输出字符串的五种方法总结

    目录 1. 引言 2. 函数 center() 3. 函数 ljust() 4. 函数 rjust() 5. 函数 zfill() 6. 函数 title() 7. 使用 1. 引言 Python语言有许多优点,常用于不同的领域,如数据科学.web开发.自动化运维等.开发人员在这些技术中选择Python的一个重要原因是Python语法简单,可以节省大家的开发时间. 在本文中,我们将学习如何使用字符串中内置的方法来格式化字符串.闲话少说,我们直接开始吧! 2. 函数 center() 函数cent

  • Javascript中将变量转换为字符串的三种方法

    前言 大家应该都知道,对于JavaScript,有3种不同方法可以将变量转换为字符串.这篇文章将详细介绍这些方法,并比较他们的优劣.下面话不多说了,来一起看看详细的介绍吧. 3种方法 将变量转换为字符串的3种方法如下: value.toString() "" + value String(value) 当value为null或者undefined时,第1种方法就不行了.而方法2和方法3基本上是一样的. ""+value: 将value与空字符串相加,即可将其转换为字

  • 总结C#删除字符串数组中空字符串的几种方法

    前言 随着微软对C#不断发展和更新,C#中对于数组操作的方式也变得越来越多样化.以往要实现过滤数组中的空字符串,都是需要实行循环的方式来排除和过滤.但C#3.0新增的lambda表达式就可以很方便实现这个功能,下面一起看看为大家整理的几种清除数组中的空字符串的方法,有需要的可以参考学习. 方式一:使用lambda表达式筛选过滤掉数组中空字符串 /// <summary> /// 使用lambda表达式排除/过滤/清空/删除掉字符串数组中的空字符串 /// </summary> //

随机推荐