今天,就和大家一起学习一下Python中连接字符串的几种方法。
1、%方式
print('%s %s' % ('Hello', 'world'))
>>> Hello world
% 符号格式化字符串的方式继承自古老的 C 语言,在许多编程语言中都有类似的实现。上例中的 %s 是一个占位符,它只代表一个字符串,并不是拼接的实际内容。实际连接的内容被放置在一个 % 符号之后的元组中。
类似的占位符有:%d(表示整数)、%f(表示浮点数)、%x(表示十六进制数)等。 %占位符不仅是这种拼接方式的一个特点,也是它的局限性,因为每一种占位符都有特定的含义,实际使用起来太麻烦了。
2、format()拼接方式
# 简洁版
s1 = 'Hello {}! My name is {}.'.format('World', 'Python猫')
print(s1)
>>>Hello World! My name is Python猫.
# 对号入座版
s2 = 'Hello {0}! My name is {1}.'.format('World', 'Python猫')
s3 = 'Hello {name1}! My name is {name2}.'.format(name1='World', name2='Python猫')
print(s2)
>>>Hello World! My name is Python猫.
print(s3)
>>>Hello World! My name is Python猫.
这样,花括号 {} 作为占位符,在 format 方法中传递实际连接的值。不难看出,其实是对%拼接方式的改进。这种方法是在 Python 2.6 中引入的。
上面的例子中,简洁版的大括号中没有内容,缺点是容易弄错顺序。签到版本主要有两种,一种是传入序列号,另一种是使用key-value方式。实战中我们推荐后一种,顺序没有错,更直观易读。
3、() 类似元组方式
s_tuple = ('Hello', ' ', 'world')
s_like_tuple = ('Hello' ' ' 'world')
print(s_tuple)
>>>('Hello', ' ', 'world')
print(s_like_tuple)
>>>Hello world
type(s_like_tuple) >>>str
注意上面例子中的 s_like_tuple 不是元组,因为元素之间没有逗号分隔符,这些元素之间可以用空格隔开,也可以不隔开。使用 type() 检查,发现是 str 类型。我没有找到原因,我猜可能是()括号中的内容是Python优化的。
这个方法看起来很快,但是括号()里面的元素要求是真实的字符串,并且不能混合变量,所以不够灵活。
4、常用的+号方式
str_1 = 'Hello world! '
str_2 = 'My name is Python猫.'
print(str_1 + str_2)
>>>Hello world! My name is Python猫.
print(str_1)
>>>Hello world!
5、join()拼接方式
str_list = ['Hello', 'world']
str_join1 = ' '.join(str_list)
str_join2 = '-'.join(str_list)
print(str_join1) >>>Hello world
print(str_join2) >>>Hello-world
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python django 框架中的单元测试是如何进行的?12/18
- ♥ Python是如何读写配置文件的?10/10
- ♥ 什么是python插入函数09/06
- ♥ Python 描述符中的三个方法是什么?11/08
- ♥ python如何在c中运行程序10/28
- ♥ python文件运行失败怎么办12/24
内容反馈