元祖
'''
定义元祖:定义元祖用小括号,且逗号隔开各个数据,数据可以是不同的类型
a_tuple = (1, '2', 3.0)
注:如元祖内仅有一个数据,仍要在数据后添加逗号,否则元祖数据类型为唯一的这个数据的数据类型
a_tuple = (1,)
元祖和列表一样可以存储多个数据,但不能修改
'''
元祖常见操作
查
'''
按下标查找
a_tuple = (1, 2, 3)
print(a_tuple[1]) # 2
元祖序列.index(数据, 开始下标, 结束下标) 查找某个数据,返回第一个对应下标,没找到报错
元祖序列.count(数据) 统计数据出现个数
len(元祖序列) 统计元祖中数据的个数
'''
改
'''
元祖不可直接修改,但如果有列表在元祖中可以修改列表
a_tuple = (1, 2, ['a', 'b'])
a_tuple[2][0] = ['c']
print(a_tuple) # (1, 2, [['c'], 'b'])
'''
字典
'''
字典内的数据都以键值对形式出现,字典不支持下标查找
字典创建
标识符 = {key: value,......}
a_dict = {1: 'zz', 2: 'ww', 3: 'qq'}
print(a_dict) # {1: 'zz', 2: 'ww', 3: 'qq'}
a_dict = {}
a_ dict = dict()
'''
字典常见操作
增
'''
字典序列[key] = value 新建key = value,如已有key,修改key对应的value
dict1 = {'name': 'TOM'}
dict1['name'] = 'XX'
print(dict1) # {'name': 'XX'}
dict1 = {'name': 'TOM'}
dict1['na'] = 'XX'
print(dict1) # {'name': 'TOM', 'na': 'XX'}
'''
删
'''
del()/ del 目标 删除字典或指定键值对
dict1 = {'name': 'TOM'}
del dict1['name']
print(dict1) # {}
字典序列.clear() 清空字典
'''
改
# 字典序列[key] = value 修改key对应的value,未找到key,新建key = value
查
'''
key值查找,未找到key将报错
dict1 = {'name': 'tom'}
print(dict1['name']) # tom
字典序列.get(key, 默认值) 查找key对应的值,如果不存在返回默认值,省略默认值返回None
dict1 = {'name': 'tom'}
print(dict1.get('name')) # tom
print(dict1.get('na', 1)) # 1
print(dict1.get('na')) # None
字典序列.keys() 查找字典中所有的key,返回一个可迭代的对象
dict1 = {'name': 'tom', 'age': '18', 'gender': 'man'}
print(dict1.keys()) # dict_keys(['name', 'age', 'gender'])
字典序列.values() 查找字典中所有的values,返回一个可迭代的对象
dict1 = {'name': 'tom', 'age': '18', 'gender': 'man'}
print(dict1.values()) # dict_values(['tom', '18', 'man'])
字典序列.items() 查找字典中所有的键值对,返回一个可迭代的对象,里面的数据是元祖
dict1 = {'name': 'tom', 'age': '18', 'gender': 'man'}
print(dict1.items()) # dict_items([('name', 'tom'), ('age', '18'), ('gender', 'man')])
'''
字典的循环遍历
遍历字典的key
a = {'name': 'tom', 'age': '18', 'num': '2020'}
for i in a.keys():
print(i)
name
age
num
遍历字典的value
a = {'name': 'tom', 'age': '18', 'num': '2020'}
for i in a.values():
print(i)
tom
18
2020
遍历字典的元素
a = {'name': 'tom', 'age': '18', 'num': '2020'}
for i in a.items():
print(i)
('name', 'tom')
('age', '18')
('num', '2020')
遍历字典的键值对
a = {'name': 'tom', 'age': '18', 'num': '2020'}
for a, b in a.items():
print("%s = %s" % (a, b))
name = tom
age = 18
num = 2020
集合
'''
集合自带去重,集合没有顺序,不支持下标操作
a = {10, 20, 30}
a = set('abcdefg') 将拆开单个为一个数据
a = set() 空集合
'''
集合常见操作
增
'''
集合序列.add(数据) 在集合内增加一个数据(只能增加单一数据),增加已有数据无用
a = {10, 20, 30}
a.add(100)
print(a) # {100, 10, 20, 30}
集合序列.update(数据) 增加一个序列(不能是单一数据)
a = {10, 20, 30}
a.update([10, 11, 12])
print(a) # {10, 11, 12, 20, 30}
'''
删
'''
集合序列.remove(数据) 删除集合中指定数据,如果不存在报错
集合序列.discard(数据) 删除集合中指定数据,如果不存在不报错
集合序列.pop() 随即删除集合中一个数据,并返回这个数据
'''
查
''' 只返回True 和False
in 判断数据在集合内
a = {10, 20, 30}
print(10 in a)
not in 判断数据不在集合内
a = {10, 20, 30}
print(10 not in a)
'''