2.17
字典创建
person = {
"name":
"alex",
'age': 20
}
person = dict(name=
'seven', age=20
)
--------------------------------
keys = {1,2,3,4,5
}
print({}.fromkeys(keys))
{1: None, 2: None, 3: None, 4: None, 5
: None}
----------------------------------
keys = {1,2,3,4,5
}
print({}.fromkeys(keys,100
))
{1: 100, 2: 100, 3: 100, 4: 100, 5: 100
}
-------------------
字典创建操作
1
. dic.keys() 返回字典包含的所有key 列表
persion = {
"name":
"alex",
"age":20
}
print(persion.keys())
dict_keys(['name',
'age'])
2
. dic.values() 返回字典包含的所有values
persion = {
"name":
"alex",
"age":20
}
print(persion.values())
dict_values(['alex', 20
])
3
. dic.items() 返回字典包含的所有key和values
persion = {
"name":
"alex",
"age":20
}
print(persion.items())
dict_items([('name',
'alex'), (
'age', 20
)])
-------------------
增1
persion = {
"name":
"alex",
"age":20
} 如果字典的key不存在,则直接新增
如果字典的key存在,则会替换新赋值的 value
persion['sex'] =
'boy'
{'name':
'alex',
'age': 20,
'sex':
'boy'}
-------------------------------
增2
setdefault(k,v)
persion.setdefault('eat',
'猪肉') 如果字典的key不存在,则直接由 dict[key] =
default
{'name':
'alex',
'age': 20,
'eat':
'猪肉'}
-------------------
persion.setdefault('name',
'大傻瓜') 如果字典的key 存在, 那么直接返回之前的value,这种操作比较安全
{'name':
'alex',
'age': 20
}
删1
pop()
persion.pop("name") 如果字典中存在key,删除并返回key对应的vuale: alex
如果key不存在,且没有给出default的值,则引发keyerror异常;
persion = {
"name":
"alex",
"age":20
}
print(persion.pop(
"name1",-1)) name1 不存在,又指定了,返回-1 ,如果不存在,则返回-1
删2
popitem() 随机返回并删除字典中的一对键和值,如果字典已经为空,却调用了此方法,就报出KeyError异常
persion = {
"name":
"alex",
"age":20,
"sex":
"女",
"喜欢":
"吃肉"}
print(persion.popitem())
删3
clear() 清空字典
修改
update()
persion = {
"name":
"alex",
"age":20
}
persion2 = {
"name":
"alex",
"age":30
}
persion.update(persion2) 仔细看,age变成了30. update()里面跟的谁,
如果重复的value,就以()里面的value为主导
print(persion)
{'name':
'alex',
'age': 30
}
查看1
persion('name') alex ,如果key不存在,报错
查看2
get()
persion.get(key, default =
None) 返回字典中key对应的值,若key不存在字典中,
则返回default的值(default默认为None)
persion = {
"name":
"alex",
"age":20,
"sex":
"女",
"喜欢":
"吃肉",
'1':
'2'}
persion.get(key,default=
'不存在')
print(persion.get(
"美女",
'不存在'))
D:\Python\python.exe E:/pycode/
test.py
不存在
循环1
for k
in persion.keys()
循环2
for k
in persion.values()
循环3
for k
in persion:
print(k,persion[k])
循环4
for k,v
in persion.items():
print(k,v)
长度 len()
persion = {
"name":
"alex",
"age":20,
"sex":
"女",
"喜欢":
"吃肉",
'1':
'2'}
print(len(persion)) 返回长度 5
转载于:https://www.cnblogs.com/666sss/p/11575702.html