当键的名称无效时,TypedDict会出现。

问题描述 投票:3回答:1

如果我在字典中的一个键有一个无效的标识符,如 A(2). 我如何创建一个 TypedDict 与这个领域?

例如

from typing import TypedDict

class RandomAlphabet(TypedDict):
    A(2): str

不是有效的Python代码,导致错误。

SyntaxError: illegal target for annotation

同样的问题也出现在保留关键字上。

class RandomAlphabet(TypedDict):
    return: str

throws:

SyntaxError: invalid syntax
python python-3.x dictionary typing
1个回答
4
投票

根据 PEP 589 你可以用 备用句法 营造 TypedDict 如下。

Movie = TypedDict('Movie', {'name': str, 'year': int})

所以,在你的例子中,你可以写:

from typing import TypedDict

RandomAlphabet = TypedDict('RandomAlphabet', {'A(2)': str})

或者第二个例子:

RandomAlphabet = TypedDict('RandomAlphabet', {'return': str})
© www.soinside.com 2019 - 2024. All rights reserved.