一,字典dict
字典是花括号包围的,由键值对形式的任何数据类型,键值对里的键和值由冒号隔开,键值对之间由逗号隔开
特点是键唯一,值不必唯一;值可以是任何数据类型,但键是不可变的,如数字,字符,元组。
dict={'name':'tom',"age":21,"grade":2}
- 访问字典:
print(dict['name'])
若访问字典里没有的键,则抛出异常
- 修改字典
dict['name1']='anny' # 添加数据
print(dict)
dict['name']='anny' #修改信息
print(dict)
del dict['name'] #删除一个元素 键 ‘name’
print(dict)
dict.clear()
print(dict) #清空字典
del dict #删除字典
print(dict)
- 键的特性
1,不允许一个键出现两次,如果键北赋值2次后,后一个值会被记住
dict={'name':'小红',"age":22,'name':'小明'}
print(dict['name']) #结果为 “小明”
2,键必须不可变,所以可以用数字,字符串,元组充当,用列表则不行- 字典的内置函数和方法
# 字典的内置函数 # len(dict) print(len(dict)) # str(dict) print(str(dict)) # type() print(type(dict)) # 字典的内置方法 # .clear() .copy() fromkeys() get() # key in dict items() keys()
集合是一个无序唯一(不重复)的元素集合(使用希哈算法)
创建时大括号或者set()函数
set1=set(); #空集合必须用set(),因为{}空时代表的是字典
set1={1,2.22,'a'} #方式1
print(type(set1))
set1=set({1,2.22,'a'}) #方式2,建议用此方式
print(type(set1))
set1=set([1,2,3,'e']) #列表转为set
print(type(set1))
set1=set({1:2.22,2:'a'}) #此形式输出键
print(set1)
set1=set({1:2.22,2:'a'}.values()) #箱输出值的话,输出键
print(set1)
# set1=set({1:[3,4],2:'a'}.values()) #值有列表,报错,键更不能是列表
# print(set1)
基本功能包括:关系测试和消除重复元素,还支持联合,交集,差和对称差等数学运算s=set({1,2,3,'a',(4,5,6),False})
print(s)
s.add('b') #增 若key不存在就添加,若key存在就不添加
print(s)
s.remove('a') #删。若若key存在就删除,若key不存在就抛异常
print(s)
# s.clear() #清空内容
# print(s)
q=s.pop() #随机删除一个元素,并返回删除的元素
print(q)
集合功能
a={2,3,4,5}
b=set({4,5,6,7})
print(a|b) #联合 {2, 3, 4, 5, 6, 7}自动去掉重复,只要出现的全部提取
print(a&b) #交 {4, 5} 重复的提取
print(a-b) #差 {2, 3} 以a去掉重复的剩余数据
print(b-a) #差{6, 7} 以b去掉重复的剩余数据
print(a^b) #对称差集{2, 3, 6, 7} 各自不重复的数据提取
遍历
for i in a:
print(i,end="") #2345