Python字符串拼接的4种方法实例

目录
  • 1. 算术运算符拼接
    • (1)+算术运算符
    • (2) * 算术运算符
  • 2、format方法
  • 3、百分号操作符
  • 4、特殊符号f
  • 附:常见字符串去除空格的方法总结
  • 总结

在程序实际应用中,少不了要进行字符串拼接的操作。下面介绍一下Python语言中四种字符串拼接的方式。

1. 算术运算符拼接

在Python中算术运算符一共有七种种,分别是+、-、*、/、//、**和%。其中+和*不仅可以用来进行算数计算,也可以用来字符串拼接。

(1)+算术运算符

+运算符在Python中可以用作数学计算,例如:

num1 = 1
num2 = 2
print(num1 + num2) # 3

同样也可以用来进行字符串拼接:

s1 = '我是'
s2 = '大帅比'
print(s1 + s2) # 我是大帅比

但是在使用+运算符来进行字符串拼接的时候,只能是字符串和字符串进行拼接,无法和整形(int)、浮点型(float)以及布尔型(bool)进行拼接。

(2) * 算术运算符

当需要输出多个同样字符的时候,可以使用*运算符来偷个小懒,例如:

s1 = '-'
print(s1 * 30)
# ------------------------------
print(s1 * True)
# -
print(s1 * False)
# (虽然没有显示,但实际上有输出一个空字符串)

但是*运算符和+运算符一样,在进行字符串拼接的时候是有限制的,不能和字符串、浮点型(float)进行拼接,其中布尔型的值会默认转化为整型(True为1,False为0)来进行计算拼接。

2、format方法

在Python中,字符串友提供一个format的方法,可以通过在字符串中留空(即一个{}),然后在format方法中按顺序填入相应参数,来实现拼接。

s1 = '小明'
s2 = 18
s3 = 1.75
s4 = True
print('{}今年{}岁了,身高{}米,是个成年的{}男人。'.format(s1, s2, s3, s4))
# 小明今年18岁了,身高1.75米,是个成年的True男人。

在这里,format可以拼接字符串、整型、浮点型以及布尔型的值,这里面布尔型的值会默认转化为字符串类型来进行拼接。
值得注意的是:format中的参数必须是按坑填入,坑只能少,不能比值多;值可以尽量多,但是不能比坑少,否则就会报错。

s1 = '小明'
s2 = 18
s3 = 1.75
s4 = True
print('{}今年{}岁了,身高{}米,是个成年的男人。'.format(s1, s2))
###
IndexError: Replacement index 2 out of range for positional args tuple

3、百分号操作符

Python还可以通过百分号加上一个字母(如%s、%d等等),来实现字符串的拼接。

s1 = 'python'
print('人生苦短,我只用%s'%s1)
# 人生苦短,我只用Python

当然百分号操作符还可以通过百分号加上一个元组来进行多个字符传入:

s1 = '张三'
s2 = 24
s3 = 1.8
s4 = True
print('我叫%s,今年%s岁,是个%s米的大帅比,你觉得我说的%s吗?'%(s1, s2, s3, s4))
# 我叫张三,今年24岁,是个1.8米的大帅比,你觉得我说的True吗?

在这里,%s可以是字符串、整型、浮点型或者布尔型,这些都会被默认转为字符串类型。但如果是其他如%d,则不能跟字符串,其他类型会被转化为整型,浮点型只取整数,布尔型只取1或者0。

常见的格式化符号

格式符号 转换
%s 通过str()字符串转换来格式化
%u 无符号的十进制整数
%d 有符号的十进制整数
%o 八进制整数
%x 十六进制整数,小写字母
%X 十六进制整数,大写字母
%e 浮点数字(科学计数法)
%E 浮点数字(科学计数法,用E代替e)
%f 浮点实数
%g 浮点数字(根据值的大小采用%e或%f)
%G 浮点数字(类似于%g)

注意: 和format不一样的是,百分号是有几个坑,就得给他安排几个值,值多或者值少,都会产生报错。

4、特殊符号f

在Python还有一种非常有意思的写法,就是在字符串前面加上特定字母,就可以实现一些功能,如加上r 取消转义符号的效果,加上 f 进行字符串格式化。

s1 = '博士'
s2 = 30
print(f'小红是一个{s1},刚毕业就获得了一个年薪{s2}万的工作。')
# 小红是一个博士,刚毕业就获得了一个年薪30万的工作。

f 和 format 方法有点相似,也是挖坑,但是 f 是现挖现填,相比 format 来说更不容易填错坑。

附:常见字符串去除空格的方法总结

去除字符串开头和结尾的空格,使用strip()方法

a = " a b c "
a.strip()

# 'a b c'

去除字符串开头的空格,lstrip()方法

a = " a b c "
a.lstrip()
# 'a b c '

去除字符串结尾的空格,rstrip()方法

a = " a b c "
a.rstrip()
# ' a b c'

总结

Python中实现对字符串拼接的四种方法:

(1)通过 + 或者 * 运算符来实现拼接。

(2)通过 format 方法来进行格式化填空,但是空可以少,值不能少,要确保每个空都会有一个对应的值。

(3)通过百分号来进行字符串格式化拼接,和 format 不一样的是,百分号是有几个空,就填几个值,值不能多,也不能少。

(4)通过特殊符号 f 进行字符串格式化拼接,和百分号方法一样,有几个空就填几个值,空里面不能没有值。

到此这篇关于Python字符串拼接的4种方法的文章就介绍到这了,更多相关Python字符串拼接内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python字符串拼接、截取及替换方法总结分析

    本文实例讲述了Python字符串拼接.截取及替换方法.分享给大家供大家参考,具体如下: python字符串连接 python字符串连接有几种方法,我开始用的第一个方法效率是最低的,后来看了书以后就用了后面的2种效率高的方法,跟大家分享一下. 先介绍下效率比较低的方法: a = ['a','b','c','d'] content = '' for i in a: content = content + i print content content的结果是:'abcd' 后来我看了书以后,发现书上

  • python实现字符串和数字拼接

    如下所示: 将i前面加str(i)就可以了 补充拓展:python 连接字符串和数字 python 连接字符串和数字的问题: 首先要说的是,python是强类型的语言,如果你把一个字符串和数字直接做连接的操作的话,会报错: TypeError: must be str, not int 下面是我们的一个例子: a = 33 b = "33" c = a + b 如果你要数字和字符串连接的话,可以把数字通过str的方法转换成字符串的形式,然后再做连接的操作. 比如c = str(a) +

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

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

  • Python字符串拼接六种方法介绍

    Python字符串拼接的6种方法: 1.加号 第一种,有编程经验的人,估计都知道很多语言里面是用加号连接两个字符串,Python里面也是如此直接用"+"来连接两个字符串: print 'Python' + 'Tab' 结果: PythonTab 2.逗号 第二种比较特殊,使用逗号连接两个字符串,如果两个字符串用"逗号"隔开,那么这两个字符串将被连接,但是,字符串之间会多出一个空格: print 'Python','Tab' 结果: Python Tab 3.直接连接

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

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

  • Python 中字符串拼接的多种方法

    python拼接字符串一般有以下几种方法: ①直接通过(+)操作符拼接 s = 'Hello'+' '+'World'+'!' print(s) 输出结果: Hello World! 使用这种方式进行字符串连接的操作效率低下,因为python中使用 + 拼接两个字符串时会生成一个新的字符串,生成新的字符串就需要重新申请内存,当拼接字符串较多时自然会影响效率. ②通过str.join()方法拼接 strlist=['Hello',' ','World','!'] print(''.join(str

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

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

  • python分割和拼接字符串

    关于string的split 和 join 方法对导入os模块进行os.path.splie()/os.path.join() 貌似是处理机制不一样,但是功能上一样. 1.string.split(str=' ',num=string.count(str)): 以str为分隔,符切片string,如果num有指定值,则仅分隔num个子字符串.S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一组使用分隔符(sep)分割字符串形成的列表.如果指定最大分割数,则在

  • Python字符串拼接的几种方法整理

    Python字符串拼接的几种方法整理 第一种 通过加号(+)的形式 print('第一种方式通过加号形式连接 :' + 'love'+'Python' + '\n') 第二种 通过逗号(,)的形式 print('第二种方式通过逗号形式连接 :' + 'love', 'Python' + '\n') 第三种 直接连接 中间有无空格均可 print('第三种方式通过直接连接形式连接 (一) :' + 'love''Python' + '\n') print('第三种方式通过直接连接形式连接 (二)

  • 解决Python中字符串和数字拼接报错的方法

    前言 众所周知Python不像JS或者PHP这种弱类型语言里在字符串连接时会自动转换类型,如果直接将字符串和数字拼接会直接报错. 如以下的代码: # coding=utf8 str = '你的分数是:' num = 82 text = str+num+'分 | 琼台博客' print text 执行结果 直接报错:TypeError: cannot concatenate 'str' and 'int' objects 解决这个方法只有提前把num转换为字符串类型,可以使用bytes函数把int

随机推荐