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实现在Linux系统下更改当前进程运行用户
Feb 04 Python
python中plot实现即时数据动态显示方法
Jun 22 Python
基于python实现KNN分类算法
Apr 23 Python
Python 监测文件是否更新的方法
Jun 10 Python
django-crontab实现服务端的定时任务的示例代码
Feb 17 Python
python扫描线填充算法详解
Feb 19 Python
Python 中由 yield 实现异步操作
May 04 Python
python GUI模拟实现计算器
Jun 22 Python
详解python with 上下文管理器
Sep 02 Python
Selenium 安装和简单使用的实现
Dec 04 Python
matplotlib交互式数据光标mpldatacursor的实现
Feb 03 Python
python 如何在 Matplotlib 中绘制垂直线
Apr 02 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调用三种数据库的方法(1)
2006/10/09 PHP
PHP5新特性: 更加面向对象化的PHP
2006/11/18 PHP
使用php shell命令合并图片的代码
2011/06/23 PHP
php 带逗号千位符数字的处理方法
2012/01/10 PHP
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
2014/01/19 PHP
PHP将整数数字转换为罗马数字实例分享
2019/03/17 PHP
js实现数组去重、判断数组以及对象中的内容是否相同
2013/11/29 Javascript
JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
2014/09/13 Javascript
介绍一个简单的JavaScript类框架
2015/06/24 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
Angularjs上传图片实例详解
2017/08/06 Javascript
Node.js中sequelize时区的配置方法
2017/12/10 Javascript
React全家桶环境搭建过程详解
2018/05/18 Javascript
对vue事件的延迟执行实例讲解
2018/08/28 Javascript
如何用python整理附件
2018/05/13 Python
使用django-guardian实现django-admin的行级权限控制的方法
2018/10/30 Python
Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例
2019/01/23 Python
深入解析python中的实例方法、类方法和静态方法
2019/03/11 Python
python自动化测试之如何解析excel文件
2019/06/27 Python
python中几种自动微分库解析
2019/08/29 Python
django 简单实现登录验证给你
2019/11/06 Python
Python3.9 beta2版本发布了,看看这7个新的PEP都是什么
2020/06/10 Python
在keras中model.fit_generator()和model.fit()的区别说明
2020/06/17 Python
用HTML5制作视频拼图的教程
2015/05/13 HTML / CSS
美国台面电器和厨具品牌:KitchenAid
2019/04/12 全球购物
美国婴儿服装购物网站:Gerber Childrenswear
2020/05/06 全球购物
班级活动策划书
2014/02/06 职场文书
小学中秋节活动方案
2014/02/06 职场文书
12月红领巾广播稿
2014/02/13 职场文书
2014年开学第一课活动方案
2014/03/06 职场文书
学雷锋的心得体会
2014/09/04 职场文书
学风建设演讲稿
2014/09/12 职场文书
技术股东合作协议书
2014/12/02 职场文书
关于食品安全的演讲稿范文(三篇)
2019/10/21 职场文书
Python 解决空列表.append() 输出为None的问题
2021/05/23 Python