python字典key不能是可以是啥类型


Posted in Python onAugust 04, 2020

python中字典的key不能是可变类型。字典可存储任意类型对象,其中值可以取任何数据类型,但键必须是不可变的,如字符串、数字或元组。语法格式:【d = {key1 : value1, key2 : value2}】。

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

d = {key1 : value1, key2 : value2 }

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

代码实现:

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

内容扩展:

Python中字典的key都可以是什么?

答:一个对象能不能作为字典的key,就取决于其有没有__hash__方法。所以所有python自带类型中,除了list、dict、set和内部至少带有上述三种类型之一的tuple之外,其余的对象都能当key。

比如数值/字符串/完全不可变的元祖/函数(内建或自定义)/类(内建或自定义)/方法/包等等你能拿出手的,不过有的实际意义不高。还有数值型要注意,因为两个不同的相等数字可以有相同的哈希值,比如1和1.0。

解释:

代码版本:3.6.3;文档版本:3.6.6

Unlike sequences, which are indexed by a range of numbers, dictionaries are indexed by keys, which can be any immutable type; strings and numbers can always be keys. Tuples can be used as keys if they contain only strings, numbers, or tuples; if a tuple contains any mutable object either directly or indirectly, it cannot be used as a key. You can't use lists as keys, since lists can be modified in place using index assignments, slice assignments, or methods like append()and extend().

字典的键可以是任意不可变类型,需要注意的是tuple元组作为键时,其中不能以任何方式包含可变对象。

到此这篇关于python字典key不能是可以是啥类型的文章就介绍到这了,更多相关python字典key不能是什么类型内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
c++生成dll使用python调用dll的方法
Jan 20 Python
Pycharm学习教程(4) Python解释器的相关配置
May 03 Python
django静态文件加载的方法
May 20 Python
使用Python获取网段IP个数以及地址清单的方法
Nov 01 Python
Django开发的简易留言板案例详解
Dec 04 Python
在python中使用requests 模拟浏览器发送请求数据的方法
Dec 26 Python
python批量创建指定名称的文件夹
Mar 21 Python
详解python中@的用法
Mar 27 Python
pytorch 实现查看网络中的参数
Jan 06 Python
利用matplotlib为图片上添加触发事件进行交互
Apr 23 Python
Python SMTP配置参数并发送邮件
Jun 16 Python
python 合并多个excel中同名的sheet
Jan 22 Python
Python延迟绑定问题原理及解决方案
Aug 04 #Python
Python 使用生成器代替线程的方法
Aug 04 #Python
详解Tensorflow不同版本要求与CUDA及CUDNN版本对应关系
Aug 04 #Python
python读取xml文件方法解析
Aug 04 #Python
如何利用python进行时间序列分析
Aug 04 #Python
通过实例简单了解Python sys.argv[]使用方法
Aug 04 #Python
哪种Python框架适合你?简单介绍几种主流Python框架
Aug 04 #Python
You might like
PHP求小于1000的所有水仙花数的代码
2012/01/10 PHP
jquery提交form表单时禁止重复提交的方法
2014/02/13 Javascript
Nodejs极简入门教程(二):定时器
2014/10/25 NodeJs
谈谈encodeURI和encodeURIComponent以及escape的区别与应用
2015/11/24 Javascript
jquery ajax双击div可直接修改div中的内容
2016/03/04 Javascript
简单实现JS计算器功能
2016/12/21 Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
2016/12/27 Javascript
vue.js中v-on:textInput无法执行事件问题的解决过程
2017/07/12 Javascript
详解JS构造函数中this和return
2017/09/16 Javascript
小程序兼容安卓和IOS数据处理问题及坑
2018/09/18 Javascript
vue添加axios,并且指定baseurl的方法
2018/09/19 Javascript
puppeteer库入门初探
2019/01/09 Javascript
Vue基本使用之对象提供的属性功能
2019/04/30 Javascript
vue学习之Vue-Router用法实例分析
2020/01/06 Javascript
Python常用小技巧总结
2015/06/01 Python
python用装饰器自动注册Tornado路由详解
2017/02/14 Python
在PyCharm中批量查找及替换的方法
2019/01/20 Python
Django实现学生管理系统
2019/02/26 Python
Python TCP通信客户端服务端代码实例
2019/11/21 Python
PyTorch和Keras计算模型参数的例子
2020/01/02 Python
使用pandas库对csv文件进行筛选保存
2020/05/25 Python
python使用多线程+socket实现端口扫描
2020/05/28 Python
实例讲解Python 迭代器与生成器
2020/07/08 Python
红色康乃馨酒店:Red Carnation Hotels
2017/06/22 全球购物
婚礼证婚人证婚词
2014/01/08 职场文书
初婚未育未抱养证明
2014/01/12 职场文书
幼儿教师考核制度
2014/01/25 职场文书
同居协议书范本
2014/04/23 职场文书
2014年巴西世界杯口号
2014/06/05 职场文书
感谢信范文大全
2015/01/23 职场文书
施工员岗位职责范本
2015/04/11 职场文书
校园广播稿范文
2015/08/19 职场文书
优质护理心得体会
2016/01/22 职场文书
python 自动刷新网页的两种方法
2021/04/20 Python
手残删除python之后的补救方法
2021/06/26 Python
golang中字符串MD5生成方式总结
2021/07/04 Golang