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
      810 months 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))