Документація

Принципи Software Engineering у Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Документація в Python

  • Коментарі
# Square the number x
  • Рядки документації (docstrings)
    """Square the number x

    :param x: number to square
    :return: x squared

    >>> square(2)
    4
    """
Принципи Software Engineering у Python

Коментарі

# This is a valid comment
x = 2
y = 3  # This is also a valid comment
# You can't see me unless you look at the source code

# Hi future collaborators!!
Принципи Software Engineering у Python

Ефективні коментарі

Коментуємо «що»

# Define people as 5
people = 5

# Multiply people by 3
people * 3

Коментуємо «чому»

# There will be 5 people attending the party
people = 5

# We need 3 pieces of pizza per person
people * 3
Принципи Software Engineering у Python

Docstring-и

def function(x):
    """High level description of function

    Additional details on function
Принципи Software Engineering у Python

Docstring-и

def function(x):
    """High level description of function

    Additional details on function

    :param x: description of parameter x
    :return: description of return value

Приклад вебсторінки, згенерованої з docstring у пакеті Flask.

Принципи Software Engineering у Python

Docstring-и

def function(x):
    """High level description of function

    Additional details on function

    :param x: description of parameter x
    :return: description of return value

    >>> # Example function usage
    Expected output of example function usage
    """
    # function code
Принципи Software Engineering у Python

Приклад docstring

def square(x):
    """Square the number x

    :param x: number to square
    :return: x squared

    >>> square(2)
    4
    """
    # `x * x` is faster than `x ** 2`
    # reference: https://stackoverflow.com/a/29055266/5731525
    return x * x
Принципи Software Engineering у Python

Вивід docstring-підказки

help(square)
square(x)
    Square the number x

    :param x: number to square
    :return: x squared

    >>> square(2)
    4
Принципи Software Engineering у Python

Давайте потренуємось!

Принципи Software Engineering у Python

Preparing Video For Download...