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 相关文章推荐
python3.3实现乘法表示例
Feb 07 Python
python实现的一个火车票转让信息采集器
Jul 09 Python
Python多线程编程之多线程加锁操作示例
Sep 06 Python
pandas 使用均值填充缺失值列的小技巧分享
Jul 04 Python
浅谈python图片处理Image和skimage的区别
Aug 04 Python
Python中list循环遍历删除数据的正确方法
Sep 02 Python
Python partial函数原理及用法解析
Dec 11 Python
Django集成celery发送异步邮件实例
Dec 17 Python
kafka-python 获取topic lag值方式
Dec 23 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
Apr 13 Python
在前女友婚礼上,用Python破解了现场的WIFI还把名称改成了
May 28 Python
Django Paginator分页器的使用示例
Jun 23 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 zip文件解压类代码
2009/12/02 PHP
PHPUnit PHP测试框架安装方法
2011/03/23 PHP
PHP文件操作实现代码分享
2011/09/01 PHP
php编写的简单页面跳转功能实现代码
2013/11/27 PHP
php使用glob函数快速查询指定目录文件的方法
2014/11/15 PHP
PHP实现的mysql主从数据库状态检测功能示例
2017/07/20 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
2017/08/11 PHP
PHP设计模式之装饰器模式定义与用法简单示例
2018/08/13 PHP
php实现文章评论系统
2019/02/18 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
2020/10/30 PHP
js函数排序的实例代码
2013/07/01 Javascript
javaScript NameSpace 简单说明介绍
2013/07/18 Javascript
nodejs爬虫抓取数据之编码问题
2015/07/03 NodeJs
jQuery代码实现发展历程时间轴特效
2015/07/30 Javascript
JS输出空格的简单实现方法
2016/09/08 Javascript
jQuery实现遍历复选框的方法示例
2017/03/06 Javascript
jQuery输入框密码的显示隐藏【代码分享】
2017/04/29 jQuery
Vue父子组件双向绑定传值的实现方法
2018/07/31 Javascript
vue在手机中通过本机IP地址访问webApp的方法
2018/08/15 Javascript
[04:03]辉夜杯主赛事 12月25日RECAP精彩回顾
2015/12/26 DOTA
浅谈Python爬取网页的编码处理
2016/11/04 Python
详谈python http长连接客户端
2017/06/12 Python
python利用requests库进行接口测试的方法详解
2018/07/06 Python
python爬取微信公众号文章
2018/08/31 Python
python实现支付宝转账接口
2019/05/07 Python
python实现超市商品销售管理系统
2019/10/25 Python
python自动结束mysql慢查询会话的实例代码
2019/10/27 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
2020/01/08 Python
前端H5 Video常见使用场景简介
2020/08/21 HTML / CSS
英国No.1文具和办公用品在线:Euroffice
2016/09/21 全球购物
英国在线房屋中介网站:Yopa
2018/01/09 全球购物
触摸春天教学反思
2014/02/03 职场文书
代理人委托书
2014/08/01 职场文书
2015年业务工作总结范文
2015/04/10 职场文书
写一个Python脚本下载哔哩哔哩舞蹈区的所有视频
2021/05/31 Python
python获取字符串中的email
2022/03/31 Python