多平台统一管理软件接口,如何实现多平台统一管理软件接口
457
2022-09-03
Python基础学习-6.字典(python字典用法)
6.字典
6.1字典的定义
字典:是python内置的数据结构之一,与列表一样是一个可变序列,以键值对的方式存储数据,字典是一个无序的序列,用{ }表示,冒号分割,每个键值对用逗号分割。根据key查找value所在的位置。
键必须唯一,值不必;值可以取任何数据类,但键必须是不可变,
语法:d={key1:value,key2:value...}
scores={'张三':99,'李四':67,'王五':89}
字典的特点:
1.字典中的所有元素都是key-value对,key不允许重复,value可以 2.字典元素无序 3.字典中的key必须是不可变对象 4.字典也可以根据需要动态伸缩 5.字典会浪费较多内存,使用空间换时间的数据结构
d={'name':'张一','name':'张二'} #key不可以重复 print(d) d={'name':'张一','nickname':'张一'} #value可以重复 print(d)
字典中的内置方法:
序号 | 函数 | 描述 |
---|---|---|
1 | dict.clear() | 删除字典内所有元素 |
2 | dict.copy() | 返回一个字典的浅复制 |
3 | dict.fromkeys() | 创建一个新字典,以序列seq中的元素做字典的键,val为字典所有键的对应初始值 |
4 | dict.get(key,default=None) | 返回指定键的值 |
5 | key in dict | 键在字典就返回True |
6 | dict.items() | 以列表返回一个视图对象 |
7 | dict.keys() | 返回一个视图对象 |
8 | dict.drtdefault(key,default=None) | 和get()类似 |
9 | dict.update(dict2) | 把字典dict2的键/值对更新到dict中 |
10 | dict.values() | 返回一个视图对象 |
11 | pop(key,[default]) | 删除字典给定key所对应的值,返回值为被删除的值 |
12 | popitem() | 返回并删除字典中的最后一对键和值 |
6.2字典的创建
常用方式:
1.花括号
#使用大括号创建空字典
emptyDict={}
print(emptyDict)
#查字典的数量
print("Length:",len(emptyDict))
#查字典类型
print(type(emptyDict))
==========================》
{}
Length: 0
2.使用内置函数dict()
#dict() student=dict(name='lini',age=20) print(student) ==========> {'name': 'lini', 'age': 20}
6.3字典的获取
获取字典中的元素:使用[]或者get()方法
[]取值:[]如果字典中共不存在指定的key,则报keyError错
get()取值:如果字典中不存在指定key,则返回None,可以通过参数设置默认的value,以便指定的key不存在时返回
eg1:
#[]取值 tinydict={'Name':'Lini','Age':20,'Class':'First'} print("tinydict['Name']:",tinydict['Name']) print("tinydict['Age']:",tinydict['Age']) #get()取值 print(tinydict.get('Name')) print(tinydict.get('Age')) #print("tinydict['abc']:",tinydict['Ailce']) #不存在KeyError: 'Ailce' #print(tinydict.get('math')) #会提示None =====================================> tinydict['Name']: Lini tinydict['Age']: 20 Lini 20
6.4字典的常用操作
key的判断:
in:指定key在字典中存在返回True
not in :指定key在字典中共不存在返回True
字典元素的删除:del
字典元素的新增:scores
scores={'张三':99,'小四':89,'王五':65} print('张三' in scores) print('张三' not in scores) #删除键值对 del scores['张三'] #scores.clear() #清空字典 print(scores) #新增元素 scores['苏六']=78 print(scores) #修改元素 scores['苏六']=100 print(scores) =======================> True False {'小四': 89, '王五': 65} {'小四': 89, '王五': 65, '苏六': 78} {'小四': 89, '王五': 65, '苏六': 100}
获取字典视图的三种方法:
keys():获取字典中所有key
values():获取字典中所有value
items():获取字典中所有key:value对
scores={'张三':99,'小四':89,'王五':65}
print('-------获取所有的key--------------')
keys=scores.keys()
print(keys)
print(type(keys))
print(list(keys)) #将所有key组成的视图转换成列表
print('-------获取所有的value--------------')
values=scores.values()
print(values)
print(type(values))
print(list(values))
print('-------获取所有的key-value对--------------')
items=scores.items()
print(items)
print(list(items)) #转换之后的列表元素由元组组成
==============================================>
-------获取所有的key--------------
dict_keys(['张三', '小四', '王五'])
字典元素的遍历
scores={'张四':69,'小五':90,'陈六':89} #字典元素的遍历 for item in scores: print(item,scores[item],scores.get(item)) ==============================》 张四 69 69 小五 90 90 陈六 89 89
字典生成式
内置函数zip():用于将可迭代的对象作为参数,并将对象中对应的元素打包成一个元组,然后返回又这些元组组成的列表
items=['red','green','blue'] sizes=[96,89,80,100,130] d={item.upper():sizes for item,sizes in zip(items,sizes)} #upper把字母变成大写 print(d) ==================》 {'RED': 96, 'GREEN': 89, 'BLUE': 80}
6.5总结
字典的创建:使用{}花括号,内置函数dict(),字典生成式
常用操作:
1.获取value:字典名[key],字典名.get(key)
2.删除key-value对,del字典名[key]
3.修改/新增,字典名[key]=value
4.in /not in
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~