我可以为 python 中的函数参数指定特定的字典形状/形式吗?
就像在打字稿中一样,我指示info参数应该是带有字符串name和数字的对象age:
function parseInfo(info: {name: string, age: number}) { /* ... */ }
Run Code Online (Sandbox Code Playgroud)
有没有办法用 python 函数来做到这一点,否则:
def parseInfo(info: dict):
# function body
Run Code Online (Sandbox Code Playgroud)
或者这可能不是Pythonic,我应该使用命名关键字或类似的东西?
Dan*_*ejo 19
在 Python 3.8+ 中,您可以使用替代语法来创建TypedDict:
from typing import TypedDict
Info = TypedDict('Info', {'name': str, 'age': int})
def parse_info(info: Info):
pass
Run Code Online (Sandbox Code Playgroud)
来自 TypedDict 的文档:
TypedDict 声明一个字典类型,该类型期望其所有实例都具有一组特定的键,其中每个键都与一致类型的值关联。这种期望不会在运行时检查,而是仅由类型检查器强制执行。
| 归档时间: |
|
| 查看次数: |
17476 次 |
| 最近记录: |