【发布时间】:2022-01-23 10:42:30
【问题描述】:
如果我在字典中有一个始终需要的键,但该键名不是有效的 Python 变量名,例如 Content-Type,我该如何定义该字典和键的类型提示?
以下不起作用:
import typing
class Headers(typing.TypedDict):
Content-Type: str
【问题讨论】:
标签: python-3.x types python-typing
如果我在字典中有一个始终需要的键,但该键名不是有效的 Python 变量名,例如 Content-Type,我该如何定义该字典和键的类型提示?
以下不起作用:
import typing
class Headers(typing.TypedDict):
Content-Type: str
【问题讨论】:
标签: python-3.x types python-typing
您可以使用另一种用于键入的语法。TypedDict 使用字符串键。 它显示在此处的文档中:https://docs.python.org/3/library/typing.html?highlight=typeddict#typing.TypedDict
以下是使用该类型提示创建类并实例化它的方法
Headers = typing.TypedDict('Headers', {'Content-Type': str})
headers = Headers({'Content-Type': 'blah'})
【讨论】: