I have seen some people prefer to create a list of strings by using thing = list[str]() instead of thing: list[str] = []. I think it looks kinda weird, but maybe that’s just because I have never seen that syntax before. Does that have any downsides?

It is also possible to use this for dicts: thing = dict[str, SomeClass](). Looks equally weird to me. Is that widely used? Would you use it? Would you point it out in a code review?

  • chemacortes
    link
    fedilink
    arrow-up
    8
    ·
    1 year ago

    With the dump function:

    from ast import dump, parse
    
    st = parse("thing = list[str]()")
    print(dump(st, indent=4))
    
    st = parse("thing: list[str] = []")
    print(dump(st, indent=4))