集合
无序(元素位置不固定)、唯一(相每个元素唯一)、可变类型(元素可变)。
set | 函数方法 | 注释 |
---|---|---|
增 | add | 将元素添加到集合中。 |
删 | pop | 删除并返回任意set元素。 |
remove | 从集合中删除一个元素; 它必须是成员。 | |
改 | update | 用本身和其他元素的并集更新集合 |
1、定义:
#方法一 直接赋值
>>> set1 = {
1,2,3,4}
>>> type(set1)
<class 'set'>
>>> set1
{
1, 2, 3, 4}
#方法二 s=set()赋值set()
>>> set2 = set()
>>> type(set2)
<class 'set'>
2、增
#方法一 .add() 每次只能添加一个元素
>>> set2.add(1)
>>> set2
{
1}
#方法二 .update([元素1,元素2···]) 可以同时添加多个元素
>>> set2.update([2,3,4])
>>> set2
{
1, 2, 3, 4}
3、删
#方法一 .pop() 随机删除
>>> set1
{
1, 2, 3, 4, 5}
>>> set1.pop()
1
>>> set1
{
2, 3, 4, 5}
#方法二 .remove(元素) 指定元素删除
>>> set1
{
2, 3, 4, 5}
>>> set1.remove(5)
>>> set1
{
2, 3, 4}
#方法三 .clear()清空集合
>>> set1
{
2, 3, 4}
>>> set1.clear()
>>> set1
set()
4、改:集合不能修改指定元素,可以先用remove删除指定元素,然后再添加
5、集合运算
运算符操作 | python运算符 |
---|---|
交集 | & |
并集 | 丨 |
差集 | - |
set1 = {
1,2.5,True,complex(2,3)}
set2 = {
3,3.4,True,complex(1,3)}
print('集合1:',set1)
print('集合2:',set2)
print('交集:',set1&set2)
print('并集:',set1|set2)
print('差集set1-set2:',set1-set2)
print('差集set2-set1:',set2-set1)
结果:
集合1: {
1, 2.5, (2+3j)}
集合2: {
3.4, True, (1+3j), 3}
交集: {
1}
并集: {
1, 2.5, 3.4, 3, (1+3j), (2+3j)}
差集set1-set2: {
2.5, (2+3j)}
差集set2-set1: {
3, (1+3j), 3.4}
字典
注意:字典的key值唯一(不能重复),但值可以不唯一
dict | 函数方法 | 注释 |
---|---|---|
增 | setdefault | 有则查,无则增 |
改 | update | 有则改,无则增 |
删 | pop | 查出指定key的键值对 |
popitem | 返回并删除字典中的最后一对键和值 | |
查 | get | 获取指定key 对应的value,如果key不存在放回none |
keys | 取出所有的key | |
values | 取出所有的值 | |
items | 取出所有的键值对 |
1、定义:
#方法一 di = {key:value}键值对形式
>>> dict={
'name':'zhangsan','age':'18'}
>>> dict
{
'name': 'zhangsan', 'age': '18'}
#方法二 di = {} 直接赋值创建
>>> dict2={
}
>>> type(dict2)
<class 'dict'>
2、增
#方法一 di[key] = value di是自己定义的变量名,没有对应的key时为增,有的时候是改
>>> dict2['name']='lisi'
>>> dict2
{
'name': 'lisi'}
#方法二 .setdefault(key,value) 有则查,无则增
>>> dict2
{
'name': 'lisi'}
>>> dict2.setdefault('name','lisi') #name存在,查找name对应值
'lisi'
>>> dict2.setdefault('age','14') #age不存在,添加
'14'
>>> dict2
{
'name': 'lisi', 'age': '14'}
3、删
#方法一 .pop(key) 删除指定的值
>>> dict2
{
'name': 'lisi', 'age': '14'}
>>> dict2.pop('age')
'14'
>>> dict2
{
'name': 'lisi'}
#方法二 .popitem() 删除字典最后一对键值对
>>> dict2
{
'name': 'lisi', 'age': '14', 'from': 'hujian'}
>>> dict2.popitem()
('from', 'hujian')
>>> dict2
{
'name': 'lisi', 'age': '14'}
#方法三 .clear() 清空字典
>>> dict2
{
'name': 'lisi', 'age': '14'}
>>> dict2.clear()
>>> dict2
{
}
4、改
#方法一 .update ({key:value}) 有则改,无则添加
>>> dict
{
'name': 'zhangsan', 'age': '20'}
>>> dict.update({
'age':'18'}) #age存在,修改age的value
>>> dict
{
'name': 'zhangsan', 'age': '18'}
>>> dict.update({
'high':'178'}) #high不存在,添加high
>>> dict
{
'name': 'zhangsan', 'age': '18', 'high': '178'}
5、查
#方法一 .[key] 查找显示所有的key值
>>> dict
{
'name': 'zhangsan', 'age': '18', 'high': '178'}
>>> dict.keys()
dict_keys(['name', 'age', 'high'])
#方法二 .get(key) 获取指定key对应的value
>>> dict
{
'name': 'zhangsan', 'age': '18', 'high': '178'}
>>> dict.get('name')
'zhangsan'
#方法三 .values() 查找显示所有的value值
>>> dict
{
'name': 'zhangsan', 'age': '18', 'high': '178'}
>>> dict.values()
dict_values(['zhangsan', '18', '178'])
#方法四 .items() 显示所有键值对
>>> dict
{
'name': 'zhangsan', 'age': '18', 'high': '178'}
>>> dict.items()
dict_items([('name', 'zhangsan'), ('age', '18'), ('high', '178')])