运算符 “+” 的作用是 “合并”,支持的容器类型(即数据类型)有:字符串、列表和元组。
a = 'Pyt'
b = 'hon'
c = a + b
print(c)
Python
以上代码是两个字符串类型进行合并、输出。这段代码很好理解,先分别赋值变量 a、b,再把它们合并后的结果赋值给 c,最后输出 c,结果为 Python。
再来看一下列表的合并:
a = [1, 2, 3]
b = [4, 5]
c = a + b
print(c)
[1, 2, 3, 4, 5]
同样的,赋值 a、b 后再合并赋值给 c,输出 c。
元组的合并:
a = ('点赞', '收藏')
b = ('关注', '转发')
c = a + b
print(c)
('点赞', '收藏', '关注', '转发')
注意,合并运算之适用于字符串、列表和元组类型的数据(数字类型的数据会直接进行加法运算,而不是合并),其它类型会报错!
a = 12
b = 30
c = a + b
print(c)
42
# 集合
a = {1, 2, 3, 4}
b = {5, 6}
c = a + b
print(c)
Traceback (most recent call last):
File "", line 3, in
c=a+b
TypeError: unsupported operand type(s) for +: 'set' and 'set'
# 字典
a = {'1':1, '2':2, '3':3}
b = {'4':4, '5':5}
c = a + b
print(c)
Traceback (most recent call last):
File "", line 1, in
c=a+b
TypeError: unsupported operand type(s) for +: 'dict' and 'dict'
如果想把两个数字合并,要怎么做?别急,我教你!
a = 12
b = 30
c = int(str(a) + str(b))
print(c)
1230
原理:将数字类型变量 a、b 转换为字符串类型进行相加,赋值给 c 后,再转换为数字类型,最后输出(如下图所示)。
注意!合并只能对同类型的两个数据进行,不同类型的数据进行合并会报错。
“*”(乘号)的作用是 “复制”,适用于字符串、列表和元组。
它的用法比较特殊,用数据乘一个数字来进行。
字符串复制:
a = '6'
b = a * 6
print(b)
666666
以上代码对字符串'6'
进行复制 6 次,输出666666
。
列表复制:
a = [1, 2, 3]
b = a * 2
print(b)
[1, 2, 3, 1, 2, 3]
元组复制:
a = (1, 2)
b = a * 3
print(b)
(1, 2, 1, 2, 1, 2)
同样地,两个数字进行*
运算会直接计算它们的积,而不是复制。
如果要进行数字的复制,可以参考之前的合并程序。
a = 12
b = int(str(a)*3)
print(b)
121212
in
与not in
语句适用于除数字以外的五种数据类型:字符串、列表、元组、字典、集合,用来判断某个数据是否在这个容器内。
字符串:
a = 'Python'
print('P' in a)
print('a' in a)
print('P' not in a)
print('a' not in a)
True
False
False
True
列表:
a = [1, 2, 3, 4]
print(2 in a)
print(5 in a)
print(2 not in a)
print(5 not in a)
True
False
False
True
元组:
a = (1, 2, 3, 4)
print(4 in a)
print('4' in a)
print(4 not in a)
print('4' not in a)
True
False
False
True
字典:
a = {'张三':1, '李四':2, '王五':3}
print('张三' in a)
print('赵六' in a)
print('张三' not in a)
print('赵六' not in a)
print(1 in a)
True
False
False
True
False
注意:对字典进行
in
、not in
命令,只是对 “键” 进行寻找,而不会找每个键对应的值。
集合:
a = {1, 2, 3, 4, 5}
print(1 in a)
print('1' in a)
print(1 not in a)
print('1' not in a)
True
False
False
True
len()
命令用于获取容器的长度,适用于字符串、列表、元组、字典和集合。
这里为了方便查看,我把五种类型放在一个代码中:
string = 'Python' # 字符串
lst = [1, 2, 3] # 列表
tup = (1, 2, 3, 4) # 元组
dic = {'张三':1, '李四':2} # 字典
st = {1, 2, 3, 4, 5} # 集合
print(len(string))
print(len(lst))
print(len(tup))
print(len(dic))
print(len(st))
6
3
4
2
5
del 用于删除一个元素:
a = 12
del a
print(a)
Traceback (most recent call last):
File "", line 3, in
print(a)
NameError: name 'a' is not defined
报错原因:a 已经被删除。
del 适用于所有元素。
max() 用于求序列中的最大值,min() 则是最小值,它们只使用于列表、元组和集合。
lst = [1, 2, 3]
tup = (9, 99, 999)
st = {10, 20, 30}
print(max(lst))
print(min(lst))
print(max(tup))
print(min(tup))
print(max(st))
print(min(st))
3
1
999
9
30
10
此表摘摘录于 CSDN 博主【流浪猪头拯救地球】的原创文章【Python 数据类型及其相互转换 ∈ Python 编程笔记】,原文链接:Python 数据类型及其相互转换 ∈ Python 编程笔记 ↩︎