Joshua's Docs - Python Types - Resources, Notes, and Tips

📄 Parent resource: My general Python notes


Miscellaneous Questions and TypeScript Equivalents

  • Null or undefined types?
    • Python uses None instead of Null or Undefined.
    • Typing a possibly unset variable?
      • Although you can use possible_string: Union[None, other_type] to represent the type of None | other_type, a shorter way is with Optional[other_type]
    • Checking for None?
      • if my_var is None or even just if not my_var works for checking if variable == None, but not for checking if a variable exists period (this will throw an exception is variable is not defined)
  • Equivalent to TS ReturnType<T>?
  • Equivalent to TS typeof {MY_VAR}?
  • Equivalent to @ts-ignore?
    • # type: ignore
  • Equivalent to TS assertions?


A word of warning; stubs can (and often are) shipped separately from the actual library; for example, VSCode's pylance extension provides out-of-the-box type stubs for Django, but these might not match the actual version of Django you happen to have installed in your project!

  • Intellisense isn't kicking in when adding elements in an array, dict, etc.
    • Try adding a comma / separator before actually writing out the element. For some reason in VSCode, it won't work unless you do this when adding elements to a list.
Markdown Source Last Updated:
Fri Aug 26 2022 22:40:13 GMT+0000 (Coordinated Universal Time)
Markdown Source Created:
Sat Aug 06 2022 12:32:20 GMT+0000 (Coordinated Universal Time)
© 2022 Joshua Tzucker, Built with Gatsby