Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >23 - 字典键值支持哪些数据类型

23 - 字典键值支持哪些数据类型

原创
作者头像
ruochen
修改于 2021-05-24 02:28:37
修改于 2021-05-24 02:28:37
5040
举报

1. 有哪些数据类型不能作为字典键值的类型

  • 列表
  • 字典
代码语言:txt
AI代码解释
复制
d = {}
d['name'] = 'Bill'
d[10] = 20
d[True] = False
d[12.3] = 20.1

d[(1, 2, 3)] = [4 ,5 ,6]

class Person:
    pass

p1 = Person()
p2 = Person()

d[p1] = 'p1'
d[p2] = 'p2'

for k,v in d.items():
    print(k, ' - ', v)
    
print(d[12.3])

# 无法哈希
# d[[1, 2, 3]] = 3

# d[{'a': 3}] = 4
代码语言:txt
AI代码解释
复制
name  -  Bill
代码语言:txt
AI代码解释
复制
10  -  20
代码语言:txt
AI代码解释
复制
True  -  False
代码语言:txt
AI代码解释
复制
12.3  -  20.1
代码语言:txt
AI代码解释
复制
(1, 2, 3)  -  [4, 5, 6]
代码语言:txt
AI代码解释
复制
<__main__.Person object at 0x000001C757A3FE48>  -  p1
代码语言:txt
AI代码解释
复制
<__main__.Person object at 0x000001C75802D0B8>  -  p2
代码语言:txt
AI代码解释
复制
20.1

2. 为什么列表和字典类型的值不能作为字典的键值

  • key 是不能变的,列表和字典的值是可以变化的,一旦变化,就再也找不到value 了

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python基本数据类型-list-tuple-dict-set
输出结果:0 1 2 3 4 5 6 7 [0, 1, 3, 4, 5, 6, 7]
职场亮哥
2020/10/10
9100
Python基本数据类型-list-tuple-dict-set
数据类型总结(二)(列表,元组,字典)
一.变量的赋值操作 x=1 a=10 b=10 # #链式赋值 a=b=c=d=e=f=10 print(a,b,c,d,e,f) #多元赋值 #方式一 x=1 y=2 z=x #z=1 x=y #x=2 y=z #y=1 print(x,y) #方式二:python特有 x,y=y,x print(x,y) #增量赋值 x=10 x+=1 #x=x+1 print(x) #解压序列类型 s='hello' a=s[0] b=s[1] c=s[2] d=s[3] e=s[4] print(a,
用户1214487
2018/01/23
1.9K0
第2章 Python基础 ( 细讲数据类型-字典 )
我们学了列表 , 现在有个需求, 把你们公司每个员工的姓名、年龄、职务、工资存到列表里,你怎么存?
axiomxs
2021/11/26
2210
【六】Python基础之数据结构:字典
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,字典是另 一种可变容器模型,且可存储任意类型对象。具有极快的查找速度。
菲宇
2019/06/13
4900
python入门到放弃(七)-基本数据类型之dcit字典
1.概述 字典是python中唯一的一个映射类型,以{}大括号括起来的键值对组成 字典中的key是唯一的,必须是可hash,不可变的数据类型 语法:{key1:value,key2:value} #扩展: 可哈希(不可变)的数据类型:int,str,tuple,bool 不可哈希(可变)的数据类型:list,dict,set #先来看看dict字典的源码写了什么,方法:按ctrl+鼠标左键点dict class dict(object): """ dict() -> new empty
老油条IT记
2020/03/20
5990
Python--数据类型、循环、运算符、容器的使用
由于最近有自动化测试的需要,对Python的语法不是很熟悉,Python的介绍就忽略了,下面开始Python基本语法的学习
aruba
2022/09/13
1.4K0
Python--数据类型、循环、运算符、容器的使用
python的字典学习(六)
本博客主要说明python的字典基本的使用,在python中,字典使用的关键字是dict,使用的是{},下面我们通过一个具体的代码来看python字典类对象的功能和字典的帮助的详细信息,见实现的代码:
无涯WuYa
2018/10/25
1.3K0
你的第一门Python人工智能课(Python基础语法 - 数据类型)
在开始学习之前,先安装一个好用的集成开发环境 - PyCharm,安装教程详见PyCharm安装教程。初期的基础学习部分,可以在Python解释器中进行。
用户7447819
2021/07/23
2100
Python编程作业二:组合数据类型
(4)用'makes me'修改字符串中的逗号,使得修改后的内容变为:love life makes me love Python
Francek Chen
2025/01/22
410
Python编程作业二:组合数据类型
Python | 原来 collections 这么好用!!
https://blog.csdn.net/mall_lucy/article/details/108822795
咸鱼学Python
2020/11/20
8970
Python | 原来 collections 这么好用!!
Python数据类型详解-字典#学习猿地
+ 也可以通过 [`dict`](https://docs.python.org/zh-cn/3.7/library/stdtypes.html#dict) 构造器来创建
学习猿地
2020/03/17
4400
python字典详解
字典是Python中唯一的內建的映射类型,可以存储任意对象的容器,比如:字符串,列表,元组,自定义对象等;字典由键(key)与值(value)组成,基本语法如下:
py3study
2020/01/06
7720
python基本数据类型之字典
字典的定义与特性 字典是Python语言中唯一的映射类型。 定义:{key1:value1,key2:value2} 1、键与值用冒号“:”分开; 2、项与项用逗号“,”分开; 特性: 1.key-value结构 2.key必须可hash、且必须为不可变数据类型、必须唯一 3.可存放任意多个值、可修改、可以不唯一 4.无序 字典的创建与常见操作 字典的创建 person = {"name": "alex", 'age': 20} #或 person = dict(name='seven', age=20)
py3study
2020/01/07
4020
python基础--数据类型
在Python3中有六个标准的数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典),
ypoint
2019/08/15
1.6K1
python数据类型(整型、序列、字典)
字典是python中的唯一的映射类型(哈希表) 字典对象是可变的,但是字典的键必须使用不可变对象,键值创建可以是字符串和元组,但是不能是列表,因为列表是可变的 ,一个字典中可以使用不同类型的键值,字典中的key是唯一的。
嘻哈记
2021/03/20
1.3K0
大数据技术之_23_Python核心基础学习_03_函数 + 对象(12.5小时)
练习1:   定义一个函数,可以用来求任意三个数的乘积。 练习2:   定义一个函数,可以根据不同的用户名显示不同的欢迎信息。
黑泽君
2019/05/17
1.3K0
大数据技术之_23_Python核心基础学习_03_函数 + 对象(12.5小时)
python学习_18
字典 字典是无序的 字典的key只能是不可变对象,不能是list dict 创建字典 创建空字典,并赋值
py3study
2020/01/15
4350
2.0 Python 数据结构与类型
数据类型是编程语言中的一个重要概念,它定义了数据的类型和提供了特定的操作和方法。在 python 中,数据类型的作用是将不同类型的数据进行分类和定义,例如数字、字符串、列表、元组、集合、字典等。这些数据类型不仅定义了数据的类型,还为数据提供了一些特定的操作和方法,例如字符串支持连接和分割,列表支持排序和添加元素,字典支持查找和更新等。因此,选择合适的数据类型是 python 编程的重要组成部分。
王瑞MVP
2023/08/11
6010
Python: collections模块实例透析Collections模块
Collections模块 collections模块提供了一些python内置数据类型的扩展,比如OrderedDict,defaultdict,namedtuple,deque,counter等,简单实用,非常值得学习了解。 import collections 1. OrderedDict 顾名思义,有顺序的词典,次序不再是随机的。普通的dict不记录插入的顺序,遍历其值的时候是随机的,相反,OrderedDict记录插入的顺序,在迭代的时候可以看出差异。 遍历 print 'Regular dict
用户2183996
2018/06/21
7340
Python开发之序列化与反序列化:pi
  在日常开发中,所有的对象都是存储在内存当中,尤其是像python这样的坚持一切接对象的高级程序设计语言,一旦关机,在写在内存中的数据都将不复存在。另一方面,存储在内存够中的对象由于编程语言、网络环境等等因素,很难在网络中进行传输交互。由此,就诞生了一种机制,可以实现内存中的对象与方便持久化在磁盘中或在网络中进行交互的数据格式(str、bites)之间的相互转换。这种机制就叫序列化与发序列化:
py3study
2020/01/17
9380
相关推荐
Python基本数据类型-list-tuple-dict-set
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档