Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >键入具有多个键值类型的Dict

键入具有多个键值类型的Dict
EN

Stack Overflow用户
提问于 2020-09-01 22:12:01
回答 1查看 3.1K关注 0票数 2

我有一个python函数,它返回具有以下结构的字典

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
   (int, int): {string: {string: int, string: float}}
}

我想知道如何用类型提示来指定这一点。因此,这些细节是明确的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Dict[Tuple[int, int], Dict[str, Dict[str, # what comes here]]

但是,内部字典有两个键的intfloat值类型。我不知道该怎么注解

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-01 22:17:02

您应该能够使用Union

联合类型;Union[X, Y]表示X或Y。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from typing import Union

Dict[Tuple[int, int], Dict[str, Dict[str, Union[int, float]]]

尽管如此,如果键总是相同的话,使用tuplenamedtuple代替内部dict可能是一个更好的主意。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63699646

复制
相关文章
变量类型-Dict
教程: 一:字典的创建     1:字典的介绍------>d = {key1:value1, key2:values2}     (1)dictionary(字典) 是 Python 中最有用的数据类型。字典是无序的对象集合     (2)字典当中的元素是通过键来存取的,而不是通过偏移存取。     (3)字典是一种映射类型,它是一个无序的键(key) : 值(value)对集合。     (3)和字符串一样,list可以被索引和切片     (4)键(key)必须使用不可变类型。必须是唯一的     此处高能:不可变类型-----数字,字符串,元组,     2:字典的创建     (1)使用花括号         dict={key1:value1, key2:values2}         或者d = dict{},再添加相应的元素 !     (2)使用内联函数dict()         d = dict() 二:字典的索引     根据key即键值可以直接访问字典中的元素     使用get函数     如果用没有的键值访问字典,会出现什么情况呢!? 三:字典的修改     对列表中的数据项进行修改或者更新     d[key]= value     d1.update(d2) 四:字典的删除     del d['key']    删除键值     d.clear()    清空字典     del d        删除字典 五:字典内置函数     len(dict)----键的总数     d.keys()-------输出所有的键     d.values()-----输出所有的值     d.get(key)-----得到键对饮的值     d1.update(d2)--把d2的键和值更新到d1中     d.pop(key)-----删除key对应的元素 CODE: # -----------------------------------------------------------------------------------------------------# # 字典的创建方法一 # -----------------------------------------------------------------------------------------------------# my_dict1 = {'Name': 'faith', 'age': '100', 'grade': '80', 'hobby': 'basketball'} print('my_Dict1', my_dict1) my_dict2 = {}       # 注意这里的报错??? my_dict2['one'] = "this is the first value!" my_dict2[2] = "this is the second value!" my_dict2['3'] = "python" print('my_dict2', my_dict2) # -----------------------------------------------------------------------------------------------------# # 字典的创建方法二---------解决上面的问题 # -----------------------------------------------------------------------------------------------------# my_dict3 = dict() # my_dict3 = dict(name='a', old=33) my_dict3.update({"first": 'funny', "middle": 2, "last": 'dag'}) # -----------------------------------------------------------------------------------------------------# # 字典的索引 # -----------------------------------------------------------------------------------------------------# # 获取元素的值方法一 print('方法一获取元素的值:', my_dict3["first"]) # 获取元素的值方法二 my_value = my_dict3.get('first')  # 得到键对应的值 print('方法二获取元素的值:', my
py3study
2020/01/19
8830
python学习系列(五)键值对的数据集合Dict
dict是dictionary的缩写,顾名思义就是字典类型,我们查字典是先查偏旁部首,然后找到对应的页数,然后查找我们要查的字。这个偏旁部首对应的页数就是dict里的key,我们要查的字就是value。dict的精髓就是通过key去关联value,key的值可以是任何不变的类型,通常是数字和字符串(dictionaries are indexed by keys, which can be any immutable type; strings and numbers can always be keys.),value可以是任何类型。
zhanyd
2022/05/16
7390
python学习系列(五)键值对的数据集合Dict
Python 内置类型 dict, li
近段时间发现一个 Python 连接数据库的连接是线程不安全的,结果惹得我哪哪儿都怀疑变量的多线程是否安全的问题,今天终于找到了正确答案,那就是 Python 内置类型 dict,list ,tuple 是线程安全的。
py3study
2020/01/08
1.1K0
Python-Dict&Set类型
'Adam' ==> 95 'Lisa' ==> 85 'Bart' ==> 59
py3study
2020/01/13
5040
【Python】字典 dict ② ( 字典常用操作 | 字典 新增 / 更新 键值对元素 | 字典 删除 键值对元素 | 字典 清空 键值对元素 )
上面的语法 , 就是向 字典变量 中添加新的 键值对元素 键Key: 值Value ;
韩曙亮
2023/10/11
3410
python字典批量删除多个键值对(连续)
  搜不到字典批量删除多个键值对的方法,换了个搜索姿势,批量取N个元素,那么组合一下,就出来了!
逆向小白
2023/10/16
2060
python字典批量删除多个键值对(连续)
Python 基础 Dict 和 Set 类型
python 什么是dict   例如:     d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }     我们把名称称为key,对应的成绩称为value,dic就是通过key 来查找value.     花括号{} 表示这是一个dict,然后按照key:value,写出即可,最后一个       key:value 的逗号可以省略。len() 函数可以计算出任何集合的大小         len(d) 43 python 访问dict   可以简单使用d[key] 的形
用户1197315
2018/04/04
7000
Python学习:dict和set类型的用法
我们已经知道,list 和 tuple 可以用来表示顺序集合,例如,班里同学的名字:
Python学习者
2022/10/21
4280
Python - 基础数据类型 dict 字典
iterable 的详解:https://www.cnblogs.com/poloyy/p/14658433.html
小菠萝测试笔记
2021/08/06
4530
本地配置wamp具有多个根目录
今天闲着没事,自己前些日子想把本地的wamp配置成两个根目录。于是就摸索自己配置玩玩。 配置测试环境:wamp2.0 1. 首先将Windows/system32/drivers/etc/hosts文件打开(用记事本打开) 2. 将原来的127.0.0.1 localhost改为 127.0.0.1 localhost 127.0.0.1 nitnews      #(这个你可以自己顺便写) 3. 保存修改后的文件,如果有什么提示就允许即可 4. 启动wamp打开apache配置文件(我的wamp是在D
苦咖啡
2018/05/07
1.2K0
23 - 字典键值支持哪些数据类型
1. 有哪些数据类型不能作为字典键值的类型 列表 字典 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) pri
ruochen
2021/05/23
4910
23 - 字典键值支持哪些数据类型
长按键入
你的朋友正在使用键盘输入他的名字name。偶尔,在键入字符c时,按键可能会被长按,而字符可能被输入1次或多次。
WindRunnerMax
2020/10/26
9380
[零基础学Python]dict()的
dict的很多方法跟list有类似的地方,下面一一道来,并且会跟list做一个对比
py3study
2020/01/03
4970
python基础-类型注解List, Dict, Tuple, Any
前面学习了 Type Hints 基础类型 int , str 以及简单的复合类型 list, tuple, dict。 接下来学习typing模块List, Dict, Tuple有什么不一样
上海-悠悠
2023/09/21
5.2K0
python基础-类型注解List, Dict, Tuple, Any
python 字典dict类型合并(不能错过哦)
我要的字典的键值有些是数据库中表的字段名, 但是有些却不是, 我需要把它们整合到一起, 因此有些这篇文章.(非得凑够150个字,我也是没有办法,扯一点昨天的问题吧,话说python中的session就只能在requests库中发挥作用?就不能想asp.net中那样存值,然后设置过期时间以便验证?我原本是想在python中找个与asp.net中的cache差不多功能的库,结果,缓存那块python好像就是redis和memcached,mongodb之类的,有倒是有一两个,但是在项目里用不上了,web.py中用webpy自己的session也有问题,不能跨.py调用嘛?后续研究吧) 程序示例:
Ryan_OVO
2023/10/18
1310
python 字典dict类型合并(不能错过哦)
基于 Hexo 键入搜索功能
安装依赖。 前往博客根目录,打开cmd命令窗口执行npm install hexo-generator-search --save。
唐志远
2022/10/27
1.2K0
基于 Hexo 键入搜索功能
长按键入!
力扣题目链接:https://leetcode-cn.com/problems/long-pressed-name
代码随想录
2021/12/24
6.5K0
长按键入!
第九讲:Python 数据类型之Dict
在Python中Dict 是用来存放key-value键值对的,它是一种灵活的访问和组织数据的方式。创建空字典使用 {} 。
Wu_Candy
2022/07/04
6820
第九讲:Python 数据类型之Dict
Golang 语言中 map 的键值类型选择,它是并发安全的吗?
关于 golang 语言的 map,已经在「Go 基础」系列文章中介绍过,文末会附上文章链接,建议还没有阅读的读者阅读。我们知道 map 的键必须支持判等操作,本文我们主要讨论的话题是 golang 语言的 map 键类型怎么选择,和 map 是并发安全的吗?
frank.
2021/03/25
1K0
CellChat 三部曲3:具有不同细胞类型成分的多个数据集的细胞通讯比较分析
此教程显示了如何将 CellChat 应用于具有不同细胞类型成分的多个数据集的比较分析。几乎所有的CellChat功能都可以应用。
生信技能树jimmy
2021/09/15
7.6K0
CellChat 三部曲3:具有不同细胞类型成分的多个数据集的细胞通讯比较分析

相似问题

如何将具有多个键值的dict数组转换为具有单个键值的dict?

341

Python:同时具有多个键值对的dict理解

10

动态键值键入类型记录

13

使用具有多个键值的相同标记的XML到dict Python

16

方法返回类型'nonetype‘不键入’dict‘

32
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文