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 相关文章推荐
Python 网络编程起步(Socket发送消息)
Sep 06 Python
python实现将pvr格式转换成pvr.ccz的方法
Apr 28 Python
python实现class对象转换成json/字典的方法
Mar 11 Python
Python冒泡排序注意要点实例详解
Sep 09 Python
Python分治法定义与应用实例详解
Jul 28 Python
在Python中关于使用os模块遍历目录的实现方法
Jan 03 Python
Python设计模式之适配器模式原理与用法详解
Jan 15 Python
PyQt5 QListWidget选择多项并返回的实例
Jun 17 Python
Python 分享10个PyCharm技巧
Jul 13 Python
python 利用turtle库绘制笑脸和哭脸的例子
Nov 23 Python
python调用c++返回带成员指针的类指针实例
Dec 12 Python
浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式
May 25 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教程之PHP中shell脚本的使用方法分享
2012/02/23 PHP
Windows下安装PHP单元测试环境PHPUnit图文教程
2014/10/24 PHP
用 Composer构建自己的 PHP 框架之基础准备
2014/10/30 PHP
php简单定时执行任务的实现方法
2015/02/23 PHP
php实现遍历文件夹的方法汇总
2017/03/02 PHP
Yii2.0框架模型多表关联查询示例
2019/07/18 PHP
jQuery hover 延时器实现代码
2011/03/12 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
jQuery CSS3相结合实现时钟插件
2016/01/08 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
jQuery插件uploadify实现ajax效果的图片上传
2016/06/18 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
js实现文字选中分享功能
2017/01/25 Javascript
angularjs项目的页面跳转如何实现(5种方法)
2017/05/25 Javascript
防止页面url缓存中ajax中post请求的处理方法
2017/10/10 Javascript
为什么使用koa2搭建微信第三方公众平台的原因
2018/05/16 Javascript
vue全局使用axios的方法实例详解
2018/11/22 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
vue 判断页面是首次进入还是再次刷新的实例
2020/11/05 Javascript
python实现360皮肤按钮控件示例
2014/02/21 Python
Python中的迭代器漫谈
2015/02/03 Python
利用python程序帮大家清理windows垃圾
2017/01/15 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
实用自动化运维Python脚本分享
2018/06/04 Python
读取json格式为DataFrame(可转为.csv)的实例讲解
2018/06/05 Python
Python3中的bytes和str类型详解
2019/05/02 Python
Python中生成一个指定长度的随机字符串实现示例
2019/11/06 Python
Pytorch训练过程出现nan的解决方式
2020/01/02 Python
pytorch 实现删除tensor中的指定行列
2020/01/13 Python
企业节能减排实施方案
2014/03/19 职场文书
2014年发展党员工作总结
2014/11/12 职场文书
酒店收银员岗位职责
2015/04/07 职场文书
国庆放假通知怎么写
2015/07/30 职场文书
2016年寒假社会实践活动总结
2015/10/10 职场文书
CSS 鼠标点击拖拽效果的实现代码
2022/12/24 HTML / CSS