字典的增删改查/元组的创建

字典的创建方式:
dic={'name':'cindy','age':24,'hobby':'girls','is_handsome':True} #格式{‘键’:‘值’,'键':数字,.........}
print(dic)
print (dic['name'])
不常用的两种创建字典的方法
# a=list((1,2,3,4))
# print(a)
# dic2=dict((('name','cindy'),))
# print(dic2)


1 dic1={'name':'cindy'}
2 dic1['age']=24                         #在dic1中添加age键 然后赋值为24
3 print (dic1)
4 
5 dic1.setdefault('hobby','girl')        #在dic1中 若setdefault函数中参数键存在  则不予理会 若没有则添加 并返回相应的字典的值
6 print(dic1)
7 
8 red=dic1.setdefault('hobby','girl')
9 print(red)


 1 dic5 = {'name': 'alex', 'age': 18, 'class': 1}
 2 
 3 dic5.clear()                           # 清空字典
 4 print(dic5)
 5 del dic5['name']                       #删除字典中指定键值对
 6 print(dic5)
 7 
 8 print(dic5.pop('age'))                 #删除字典中指定键值对,并返回该键值对的值
 9 ret=dic5.pop('age')
10 print(ret)
11 print(dic5)
12 
13 a = dic5.popitem()                     #随机删除某组键值对,并以元组方式返回值
14 print(a, dic5)
15 
16 del dic5                               #删除整个字典


dic4={'name':'cindy','age':24,'hobby':'girls','is_handsome':True}
dic4['age']=55
print(dic4)

dic5={'1':'111','2':'222','hobby':'333'}
dic4.update(dic5)                        #将dic4在dic5中没有的键添加进去 如果有相同的键则修改成dic5的键盘
print(dic4)
print(dic5)


1 dic3={'name':'cindy','age':24,'hobby':'girls','is_handsome':True}
2 print(dic3['name'])
3 print(dic3.keys())                     #keys是所有的键 用字典dic3去调用  可返回所有的键 返回值的类型是'dict_keys'(这个不用管)
4 print(dic3.values())                   #value是值
5 print(dic3.items())                    #item是key和value都取
6 print(list(dic3.items()))              #使用list将取出的值展示成列表

还有一些其他用法

 1 dic6=dict.fromkeys(['host1','host2','host3'],'test') #分别赋值
 2 print(dic6)                            #{'host3': 'test', 'host1': 'test', 'host2': 'test'}
 3 
 4 dic6['host2']='abc'                    #键的替换
 5 print(dic6)
 6 
 7 dic6=dict.fromkeys(['host1','host2','host3'],['test1','tets2'])
 8 print(dic6)                            #{'host2': ['test1', 'tets2'], 'host3': ['test1', 'tets2'], 'host1': ['test1', 'tets2']}
 9 
10 dic6['host2'][1]='test3'
11 print(dic6)                            #{'host3': ['test1', 'test3'], 'host2': ['test1', 'test3'], 'host1': ['test1', 'test3']}
12 
13 
14 
15 av_catalog = {
16     "欧美":{
17         "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
18         "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
19         "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
20         "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
21     },
22     "日韩":{
23         "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
24     },
25     "大陆":{
26         "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
27     }
28 }
29 
30 av_catalog['欧美']["www.youporn.com"][1]='高清无码'
31 
32 
33 
34 dic={5:'555',2:'666',4:'444'}
35 print(sorted(dic))                     #根据键进行排序
36 print(sorted(dic.items()))             #根据键进行排序
37 print(sorted(dic.values())             #根据值进行排序
38 
39 
40 
41 
42 
43 dic7={'name':'cindy','age':18}
44 
45 
46 for i in dic7:
47     print(i,dic7[i])                     #循环遍历字典的推荐方式 print后面的参数第一个是键值 第二个是值
48 
49 for i,v in dic7.items():                 #循环遍历字典的另外一种方式 效率更低
50     print(i,v)

  元组的创建

tup1 = ()      #空元组  与列表的去别在于 元组不能修改  只是只读
tup2 = (20,) #如果一个元组里面只有一个元素 那么在元素后面要加一个逗号
代码说明:
 1 menu={
 2     '北京':{
 3         '朝阳':{
 4                '国贸':{
 5                     'CICC':{},
 6                     'HP':{},
 7                     '渣打银行':{},
 8                     'CCTV':{},
 9                       },
10                '望京':{
11                     '陌陌':{},
12                     '奔驰':{},
13                     '360':{},
14                       },
15                '三里屯':{
16                     '优衣库':{},
17                     'apple':{},
18                         },
19                '昌平':{
20                     '沙河':{
21                           '老男孩':{},
22                           '阿泰包子':{},
23                            },
24                     '天通苑':{
25                           '链家':{},
26                           '我爱我家':{},
27                             },
28                     '回龙观':{},
29                       },
30                '海淀':{
31                     '五道口':{
32                           '谷歌':{},
33                           '网易':{},
34                           'Sohu':{},
35                           'Sogo':{},
36                           '快手':{},
37                              }
38                       },
39 
40                '中关村':{
41                     'youku':{},
42                     'Iqiyi':{},
43                     '汽车之家':{},
44                     '新东方':{},
45                     'Tencent':{},
46                         }
47                }
48             },
49 
50 
51     '上海':{
52         '浦东':{
53                '陆家嘴':{
54                     'CICC':{},
55                     '高盛':{},
56                     '摩根':{},
57                         },
58                '外滩':{
59                     '东方明珠':{},
60                       },
61                }
62 
63            },
64     '山东':{
65         '济南':{},
66         '德州':{
67             '乐陵':{},
68             '平原':{},
69                },
70         '青岛':{},
71            },
72     }
View Code
 1 current_layer = menu
 2 parent_layer = []
 3 while True:
 4             for key in current_layer:
 5                 print(key)
 6             choise = input('>>:').strip()
 7             if choise in current_layer:
 8                 parent_layer.append(current_layer)
 9                 current_layer = current_layer[choise]
10 
11             if choise == 'b':
12                 if parent_layer:
13                     current_layer = parent_layer.pop()
14             else:continue







原文地址:https://www.cnblogs.com/cindy7/p/10663830.html