python - 如何从 pythons TypedDict 获取密钥类型
问题描述
如果我有一个 TypedDict 像:
class Td(TypedDict):
bar: str
foo: str
并希望有一个函数,其参数需要是该 TypedDict 的键,例如:
def hello_Td(key: str, td: Td):
return 'Hello ' + td[key]
使用上面的代码,我收到一个警告,说 key 是 str,预期 Literal['bar','foo']。
有没有办法自动生成该文字联合类型?
就像是:
td_keys = Literal(Td.keys())
def hello_Td(key: td_keys, td: Td):
return 'Hello ' + td[key]
更新 1
代表: https ://pastebin.com/vaVpJCBv
解决方案
推荐阅读
- sql-server - SQL Server 中的大表分区或索引
- ios - 在代号一中旋转显示的图像
- python-3.x - AttributeError:“_io.TextIOWrapper”对象没有“替换”属性
- java - 以编程方式获取已启动的 .jar 文件的名称
- spring - Hibernate 4 -> 5 升级导致 LazyInitializationException
- qt - 如何在只读文件系统中进行写作?
- unit-testing - Jest 覆盖测试全局对象和逆条件
- slim - Slim 框架和 Auth0
- python - 如何检查一个项目是否存在于内部列表中并在包含它的相应外部列表中获取列表项?
- c++ - 为什么初始化列表只能用于声明?