字典:
字典以关键字为索引,但关键字为任意不可变类型。
字典属于映射类型,字符串、元组、列表属于序列类型。
一个数据类型进行操作后如果存储位置和之前一样,则证明其可变,返之不可变。 数可被哈希即不可变,不可被哈希即可变。
数值、字符 元组 能被哈希 不可变。
列表 集合 字典 不可被哈希 可变。
字典内的键不能相同,字典内的顺序与放入的顺序不同。
-
dict()创建一个空的字典
-
dict.formkeys(seq[,value])创建一个新字典,seq中的值为键,value为键对应的初始值。
-
dict.keys()返回一个可迭代对象,内容为字典内的所有键。
-
dict.values() 返回的是字典内的所有值。
-
dict.items() 返回可遍历的(键值)元组数据
-
dict.get(key,default=None)返回规定键的值,查找不到返回默认值,可以自己设置。
-
dict.setdefault(keys,default=None)如果存在,返回对应的键值,不存在,自动创建一个键值对。
-
dict.pop(key[,default])删除键对应的值
-
dict.popitem()随机删除一对键值对
-
dict.clear()删除字典内所有元素。
-
dict.copy()返回一个字典的浅拷贝。
-
dict.update(dict2)把字典参数dict2的键值对更新到dict中。
练习题:
1 3
2 dic[“java”]=98
3 dic.pop(“c”)
4 dic.setdefault(“php”,98)
5 list1=dic.keys()
6 list2=dic.values()
7 if “javascript” in dic:
8 a=0
for i in list2:
a+=i
9 max(list2)
10 min(list2)
11 dic.update(dic1)
2.
def transfer_score(data):
for i in data:
if type(data[i])==dict:
for j in data[i]:
data[i][j]=int(data[i][j])
else:
for j in range(0,len(data[i])):
data[i][j]=int(data[i][j])
print(data)
心得: | _ |