博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day12 Python字典
阅读量:5825 次
发布时间:2019-06-18

本文共 2835 字,大约阅读时间需要 9 分钟。

类:dict

#字典是无序的

1、前戏

info = {     "k1": "v1", # 键值对     "k2": "v2"}

2、字典的value可以是任何值

info = {    "k1": 18,    "k2": True,    "k3": [        11,        [],        (),        22,        33,        {            'kk1': 'vv1',            'kk2': 'vv2',            'kk3': (11,22),        }    ],    "k4": (11,22,33,44)}print(info)结果:{'k1': 18, 'k2': True, 'k3': [11, [], (), 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22)}], 'k4': (11, 22, 33, 44)}

3、 列表、字典不能作为字典的key,key值不能重复。

info ={    #1: 'asdf',     "k1": 'asjlkdf',    #True: "123",#True不能跟1同时作为key,重复的只显示一个因为1=True    #[11,22]: 123    (11,22): 123,    #{'k1':'v1'}: 123}print(info)结果:{'k1': 'asjlkdf', (11, 22): 123}

4、字典无序

5、索引方式找到指定元素

info = {    "k1": 18,    2: True,    "k3": [        11,        [],        (),        22,        33,        {            'kk1': 'vv1',            'kk2': 'vv2',            'kk3': (11,22),        }    ],    "k4": (11,22,33,44)}# v = info['k1']# print(v)# v = info[2]# print(v)v = info['k3'][5]['kk3'][0]print(v)结果:11

6、字典支持del删除

info = {    "k1": 18,    2: True,    "k3": [        11,        [],        (),        22,        33,        {            'kk1': 'vv1',            'kk2': 'vv2',            'kk3': (11,22),        }    ],    "k4": (11,22,33,44)}del info['k1']del info['k3'][5]['kk1']print(info)结果:{2: True, 'k3': [11, [], (), 22, 33, {'kk2': 'vv2', 'kk3': (11, 22)}], 'k4': (11, 22, 33, 44)}

7、for循环

info = {    "k1": 18,    2: True,    "k3": [        11,        [],        (),        22,        33,        {            'kk1': 'vv1',            'kk2': 'vv2',            'kk3': (11,22),        }    ],    "k4": (11,22,33,44)}#for循环健for item in info。key:    print(item)#结果k12k3k4#for循环值for item in info.values():    print(item)结果:18True[11, [], (), 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22)}](11, 22, 33, 44)#for循环键值for k,v in info.items():    print(k,v)结果:k1 182 Truek3 [11, [], (), 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22)}]k4 (11, 22, 33, 44)

方法:

1、根据序列,创建字典,并指定统一的值

v = dict.fromkeys(["k1",123,"999"],123)print(v)结果:{'k1': 123, 123: 123, '999': 123}

2、根据Key获取值,key不存在,可以指定默认值None

dic = {    "k1":"v1"}v = dic.get('k1',None)#根据Key获取值,key不存在时,可以指定默认值(None)v1 = dic.get("k",None)print(v)print(v1)结果:v1None

3、删除并获取值

dic = {    "k1": 'v1',    "k2": 'v2'}v = dic.pop('k1',None)v1 = dic.pop('k11',None)print(dic,v)print(dic,v1)结果:{'k2': 'v2'} v1{'k2': 'v2'} None

4、设置值

dic = {    "k1": 'v1',    "k2": 'v2'}v = dic.setdefault('k1111','123')print(dic,v)结果:{'k1': 'v1', 'k2': 'v2', 'k1111': '123'} 123# 已存在,不设置,获取当前key对应的值# 不存在,设置,获取当前key对应的值

5、更新

dic = {    "k1": 'v1',    "k2": 'v2'}dic.update({'k1': '111111','k3': 123})print(dic)dic.update(k1=123,k3=345,k5="asdf")print(dic)结果:{'k1': '111111', 'k2': 'v2', 'k3': 123}{'k1': 123, 'k2': 'v2', 'k3': 345, 'k5': 'asdf'}

  

转载于:https://www.cnblogs.com/charon2/p/10342600.html

你可能感兴趣的文章
采用JXL包进行EXCEL数据写入操作
查看>>
一周总结
查看>>
将txt文件转化为json进行操作
查看>>
线性表4 - 数据结构和算法09
查看>>
C语言数据类型char
查看>>
Online Patching--EBS R12.2最大的改进
查看>>
Binary Search Tree Iterator leetcode
查看>>
uva-317-找规律
查看>>
Event事件的兼容性(转)
查看>>
我的2014-相对奢侈的生活
查看>>
zoj 2412 dfs 求连通分量的个数
查看>>
Java设计模式
查看>>
一文读懂 AOP | 你想要的最全面 AOP 方法探讨
查看>>
Spring Cloud 微服务分布式链路跟踪 Sleuth 与 Zipkin
查看>>
ORM数据库框架 SQLite 常用数据库框架比较 MD
查看>>
华为OJ 名字美丽度
查看>>
微信公众号与APP微信第三方登录账号打通
查看>>
onchange()事件的应用
查看>>
Windows 下最佳的 C++ 开发的 IDE 是什么?
查看>>
软件工程师成长为架构师必备的十项技能
查看>>