If I have a key in a dictionary with an invalid identifier, such as A(2)
. How can I create a TypedDict
with this field?
E.g
According to PEP 589 you can use alternative syntax to create a TypedDict
as follows:
Movie = TypedDict('Movie', {'name': str, 'year': int})
So, in your case, you could write:
from typing import TypedDict
RandomAlphabet = TypedDict('RandomAlphabet', {'A(2)': str})
or for the second example:
RandomAlphabet = TypedDict('RandomAlphabet', {'return': str})
PEP 589 warns, though:
This syntax doesn't support inheritance, however, and there is no way to have both required and non-required fields in a single type. The motivation for this is keeping the backwards compatible syntax as simple as possible while covering the most common use cases.