Python 拼接字符串的几种方式
Python 拼接字符串的几种方式
在学习Python(3x)的过程中,在拼接字符串的时候遇到了些问题,所以抽点时间整理一下Python 拼接字符串的几种方式。
方式1,使用加号(+)连接,使用加号连接各个变量或者元素必须是字符串类型(<class 'str'>)
例如:
|
1
2
3
4
|
str_name1 = 'To'str_name2 = 'ny'str_name = str_name1 + str_name2print(str_name) |
输出结果:

我是学C#出身的,把c#编程习惯用到了Python 上面,于是就出现了下面的代码
number=34
print('这个数是:'+number)
编译通过运行才发现行不通,出现了一下错误。

突然就懵了。
C#代码
class Program
{
static void Main(string[] args)
{
//c# 字符串使用"+"拼接
int num = 34;
Console.WriteLine("这个数是:"+num);
}
}
编译通过,执行结果如下

修改Python 代码:
number=34
print('这个数是:'+str(number))
方式三:使用.join(iterable) 拼接
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
print('-----------method3-----------')# method3 使用join拼接字符串# str.join(iterable)# 可join的条件 join(iterable) iterable 可迭代的, 如果列表(list)为 非嵌套列表,列表元素为字符串(str)类型,# 序列类型,散列类型 都可以作为参数传入# eg(1):list_good_night = ['晚', '上', '好', '!']str_night = ''.join(list_good_night)print(str_night)# eg(2):# 拼接前缀 ('拼接前缀').join(iterable)str_night1 = '------>'.join(list_good_night)print(str_night1)# eg(3) 拼接 iterable = 字典 key,value 必须字符串 默认拼接key 的列表dict_name = {'key1': 'value1', 'key2': 'value2'}str_key = ','.join(dict_name)# 拼接value 的列表str_value = ','.join(dict_name.values())print(str_key)print(str_value) |
执行结果:

方式四:使用逗号(,)拼接
|
1
2
3
4
5
6
7
8
|
# method4 使用逗号(,)连接# 使用,逗号形式要注意一点,就是只能用于print打印,赋值操作会生成元组:print('-----------method4-----------')a, b = 'Hello', 'word'c = a, bprint(a, b)print(c)print(type(c)) |
输出结果:

方式五:直接拼接
|
1
2
3
4
|
# mehon5 直接连接print('-----------method5-----------')print('hello''python') |
方式六:format 拼接
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# mehon5 直接连接print('-----------method5-----------')print('hello''python')# methon6 format 拼接 str.format(args,**kwargs)# eg(1) {} 充当占位符str_word = 'hello, word! {} {}'.format('张三', '李四')print(str_word)# eg(2) {[index]} 按索引位置填充 .format([0]=value1, [1]= value1},)str_word_index0 = 'hell0, word!{0},{1}'.format('张三', '李四')str_word_index1 = 'hell0, word!{1},{0}'.format('张三', '李四')print(str_word_index0)print(str_word_index1)# eg(3) {[keyword]}str_word_keyword = 'hell0, word!{a},{b}'.format(b='张三', a='李四')print(str_word_keyword)# eg(4) {[keyword,indec]} keyword 放在最后str_word1 = 'hell0, word!{1}{a}{0},{b}'.format('index0', 'index1', b='张三', a='李四')print(str_word1)# eg(5) format 参数类型不限,当为元祖,列表,集合,字典时输出str_word2 = 'hell0, word!{b}'.format(b=['eee', 'd'])print(str_word2)# eg(6) 作为函数使用str_word3 = 'hello, word! {} {}'.formatword = str_word3('张三', '李四')print(word) |
输出结果:

我们只需要努力,然后剩下的交给时间。


浙公网安备 33010602011771号