初学Python——字典

一、定义

什么是字典?

字典是一种数据类型,是一系列数据的组合。

每一个数据单元都分为key和value,key也称主键,具有唯一性,不可重复。value可以理解成是key对应的值。

1 info={
2              1:"wo shi shei",
3              2:"sun wu kong",
4  "stu001":"alex",
5  "stu002":"zhangyang",
6 
7 }

如上,key可以是int型,也可以是字符型,value亦是。

二、字典数据的增删改查

1、查询(只能通过key来查询)

1 print(info["stu001"])

查询此键值对应的数据

2、修改数据

info[1]="cbad"               #如果key值存在,则修改数据
info["stu005"]="qwe"    #如果key值不存在,则创建数据

3.增添数据

用setdefault()方法,括号内第一个值为key,第二个是value

info.setdefault("stu001","ALEX")      #如果键值存在,不做修改
info.setdefault("stu006","dawang")  #如果键值不存在,创建数据
info["stu005"]="qwe"    #如果key值不存在,则创建数据(不推荐此种添加数据的方法,不安全)

4.删除数据

必须写键值,只能用键值。

del info["stu005"]
info.pop("stu005")

三、其它的知识点

1.获取key是否存在的安全方法:

①get()方法

print(info.get("stu001"))

②大众方法

print("stu2001" in info)

不止字典,列表、集合都能用此方法。

2.将所有Key和value的值打印出来

keys()方法和values()方法

print(info.values()) #将所有value的值打印出来
print(info.keys())    #打印所有key的值

3.合并字典

update()方法

info.update(b)  #将两个字典合并,如果有相同的key,其value被覆盖成字典b的值

4.将字典转化成列表输出

print(info.items()) #将一个字典转化成一个列表,每个元素都是一个元组(仅本行有效,字典本身并不改变)

字典本身并没有改变

5.字典反转(将原来的kye和value互换)

1 alphabet = {
2     "a":0,"b":1,"c":2,"d":3,"e":4,"f":5,"g":6,"h":7,"i":8,"j":9,"k":10,"l":11,"m":12,
3     "n":13,"o":14,"p":15,"q":16,"r":17,"s":18,"t":19,"u":20,"v":21,"w":22,"x":23,"y":24,"z":25,
4 } # 原字典
5 dict_new = {value:key for key,value in alphabet.items()} # 将字典反转 key和value互换
6 print(dict_new)
7 print(alphabet)

原字典alphabet不改变

四、嵌套字典及其循环

1.字典循环

for i in info:
    print(i,info[i])

当中,i是key,info[i]是对应的value

2.嵌套字典

part={
    "新疆":{
        "北疆":“a”
        "南疆":“b”
    },
    "河北":{
        "石家庄":"c"
               "保定":"d"
},
    "湖南":{
        "长沙市":"e"
                "株洲市":"f"
    },
}

3.嵌套字典的循环

for i in part:
    print(i)
    for j in part[i]:
        print(j)
原文地址:https://www.cnblogs.com/V587Chinese/p/8745622.html