.. Mypy documentation master file, created by sphinx-quickstart on Sun Sep 14 19:50:35 2014. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Welcome to the basedmypy docs! ============================== Basedmypy is a static type checker for Python that is built on top of the work done by the `mypy project `_. Type checkers help ensure that you're using variables and functions in your code correctly. With mypy, add type hints (:pep:`484`) to your Python programs, and mypy will warn you when you use those types incorrectly. Python is a dynamic language, so usually you'll only see errors in your code when you attempt to run it. Mypy is a *static* checker, so it finds bugs in your programs without even running them! Here is a small example to whet your appetite: .. code-block:: python number = input("What is your favourite number?") print("It is", number + 1) # error: Unsupported operand types for + ("str" and "int") Adding type hints for mypy does not interfere with the way your program would otherwise run. Think of type hints as similar to comments! You can always use the Python interpreter to run your code, even if mypy reports errors. Mypy is designed with gradual typing in mind. This means you can add type hints to your code base slowly and that you can always fall back to dynamic typing when static typing is not convenient. Mypy has a powerful and easy-to-use type system, supporting features such as type inference, generics, callable types, tuple types, union types, structural subtyping and more. Using mypy will make your programs easier to understand, debug, and maintain. .. note:: Although mypy is production ready, there may be occasional changes that break backward compatibility. The mypy development team tries to minimize the impact of changes to user code. In case of a major breaking change, mypy's major version will be bumped. Contents -------- .. toctree:: :maxdepth: 2 :caption: First steps getting_started cheat_sheet_py3 existing_code .. toctree:: :maxdepth: 2 :caption: Basedmypy baseline based_features based_inference .. _overview-type-system-reference: .. toctree:: :maxdepth: 2 :caption: Type system reference builtin_types type_inference_and_annotations kinds_of_types class_basics runtime_troubles protocols dynamic_typing type_narrowing duck_type_compatibility stubs generics more_types literal_types typed_dict final_attrs metaclasses .. toctree:: :maxdepth: 2 :caption: Configuring and running mypy running_mypy command_line config_file inline_config mypy_daemon installed_packages extending_mypy stubgen stubtest .. toctree:: :maxdepth: 2 :caption: Miscellaneous common_issues supported_python_features error_codes error_code_list error_code_list2 error_code_list3 additional_features faq .. toctree:: :hidden: :caption: Project Links GitHub Discord Indices and tables ================== * :ref:`genindex` * :ref:`search`