[英]Python typing dict of dicts
如何正确键入提示此 python 结构:
people={
"john" : {"likes": "apples", "dislikes": "organges"},
"aisha": {"likes": "kittens", "dislikes": "ravens"}
}
编辑:可以指定任何键 - 例如“mary”,“joseph”,“carl”......我知道可以这样输入值字典
class _Preferences(TypedDict):
likes: str
dislikes: str
但我不确定如何输入people
自己决定的内容。
people: dict[str, dict[str, str]] = {
"john": {"likes": "apples", "dislikes": "oranges"},
"aisha": {"likes": "kittens", "dislikes": "ravens"}
}
这应该适用于较新版本的 python3
您可以为值定义一个TypedDict
,然后用它注释people
字典:
from typing import TypedDict
class LikesDislikes(TypedDict):
likes: str
dislikes: str
people: dict[str, LikesDislikes]
people = {
"john": {"likes": "apples", "dislikes": "organges"},
"aisha": {"likes": "kittens", "dislikes": "ravens"},
}
你的people
字典没有固定的结构,但它们是字符串。 你不能做更多的事情。 如果它有固定的结构,你也可以把它写成TypedDict
并将LikesDislikes
设置为键的值。 像:
class People(TypedDict):
john: LikesDislikes
aisha: LikesDislikes
但这在这里没有意义。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.