python:字典
时间:2019-08-28
本文章向大家介绍python:字典,主要包括python:字典使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
字典(dictionary)是除列表之外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取,这个键可以是数字、字符串甚至元组。映射可以使用任何不可变对象标识元素,最常用的类型是字符串和元组,python唯一内建的映射类型是字典。
语法:
>>> info = { ... 'stu1101': "TengLan Wu", ... 'stu1102': "LongZe Luola", ... 'stu1103': "XiaoZe Maliya", ... }
字典的特性:
- dict是无序的
- key必须是唯一的,天生去重
增加
>>> info["stu1104"] = "wangzhaoyang" >>> info {'stu1101': 'TengLan Wu', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': 'wangzhaoyang'}
修改
>>> info["stu1101"] = "ligang" >>> info {'stu1101': 'ligang', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': 'wangzhaoyang'}
删除
>>> info {'stu1101': 'ligang', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': 'wangzhaoyang'} >>> info.pop("stu1102") #常用删除方法 'LongZe Luola' >>> info {'stu1101': 'ligang', 'stu1103': 'XiaoZe Maliya', 'stu1104': 'wangzhaoyang'} >>> del info["stu1103"] >>> info {'stu1101': 'ligang', 'stu1104': 'wangzhaoyang'}
>>> info
{'stu1101': 'ligang', 'stu1104': 'wangzhaoyang', 'stu1102': 'zhanglei'}
>>> info.pop
info.pop( info.popitem(
>>> info.popitem() ###随机删除
('stu1102', 'zhanglei')
>>> info
{'stu1101': 'ligang', 'stu1104': 'wangzhaoyang'}
查找
>>> info {'stu1101': 'ligang', 'stu1104': 'wangzhaoyang', 'stu1102': 'zhanglei', 'stu1103': 'liyang'} >>> "stu1102" in info True >>> info.get("stu1101") 'ligang' >>> info.get("stu1105") ##get查找,如果存在则返回,不存在不会报错 >>> info["stu1101"] 'ligang' >>> info["stu1105"] #存在则返回,不存在则报错 Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'stu1105'
items #将一个字典转换为元组
>>> info.items() dict_items([('stu1101', 'ligang'), ('stu1104', 'wangzhaoyang'), ('stu1102', 'zhanglei'), ('stu1103', 'liyang')])
key values
#values >>> info.values() dict_values(['LongZe Luola', 'XiaoZe Maliya']) #keys >>> info.keys() dict_keys(['stu1102', 'stu1103'])
多级嵌套
people ={ 'Jason':{ 'phone':'2341', 'addr':'Foo drive 23' }, 'James':{ 'phone':'4564', 'addr':'Bar street 42' }, 'Jzhou':{ 'phone':'4564', 'addr':'Baz avenue 90' } }
people["James"]["phone"] = "10000" >>> people {'Jason': {'phone': '2341', 'addr': 'Foo drive 23'}, 'James': {'phone': '10000', 'addr': 'Bar street 42'}, 'Jzhou': {'phone': '4564', 'addr': 'Baz avenue 90'}}
循环字典
#方法1 for key in info: print(key,info[key]) #方法2 for k,v in info.items(): #会先把dict转成list,数据里大时莫用 print(k,v)
原文地址:https://www.cnblogs.com/wzy23/p/11424625.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android startActivityForResult和setResult的区别
- Linux系统使用Fuser命令的方法
- Android实现地理定位功能
- Android实现在ServiceManager中加入自定义服务的方法详解
- Android studio so库找不到问题解决办法
- Android使用ViewPager实现屏幕滑动效果
- Android 自定义view实现进度条加载效果实例代码
- Android电池电量监听的示例代码
- Android 解决ScrollView嵌套CridView显示问题
- Android利用zxing快速集成二维码扫描的实例教程
- Android中使用SharedPreferences完成记住账号密码的功能
- Android Intent封装的实例详解
- Android自定义Drawable实现圆角效果
- Android ApplicationInfo 应用程序信息的详解
- Android UI控件Switch的使用方法