Когда вам нужна помощь в написании программы, использовании модулей, а также для вызова справки рекомендуется использовать функцию help() в Python.

Что такое help() в Python?
help() в Python — это встроенный метод, который используется для интерактивного использования. Функция help() используется для получения документации по указанному модулю, классу, функции, переменным и т.д.
Синтаксис
|
1 |
help([object]) |
В справочной консоли мы можем указать имена модулей, классов и функций, чтобы получить их документацию.
Теперь перейдите в терминал или консоль CMD и введите следующую команду.
|
1 |
python3 |
На данный момент версия Python3 является последней, поэтому введите python3, и вы увидите то, что показано ниже.
|
1 2 3 4 5 |
➜ pyt python3 Python 3.6.4(v3.6.4:d48ecebad5, Dec 18 2017, 21:07:28) [GCC 4.2.1(Apple Inc. build 5666)(dot 3)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> |
Теперь введите функцию help().
|
1 |
help() |
Вы увидите:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
>>> help() Welcome to Python 3.6's help utility! If this is your first time using Python, you should definitely check out the tutorial on the Internet at http://docs.python.org/3.6/tutorial/. Enter the name of any module, keyword, or topic to get help on writing Python programs and using Python modules. To quit this help utility and return to the interpreter, just type "quit". To get a list of available modules, keywords, symbols, or topics, type "modules", "keywords", "symbols", or "topics". Each module also comes with a one-line summary of what it does; to list the modules whose name or summary contain a given string such as "spam", type "modules spam". help> |
Теперь мы можем проверить следующие встроенные функции и модули.
|
1 2 3 4 5 6 7 |
help> collections help> modules help> builtins help> symbols help> topics help> keywords help> LOOPING |
Допустим, мы вводим коллекции, а затем получаем следующий вывод в консоли.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
Help on package collections: NAME collections MODULE REFERENCE https://docs.python.org/3.6/library/collections The following documentation is automatically generated from the Python source files. It may be incomplete, incorrect or include features that are considered implementation detail and may vary between Python implementations. When in doubt, consult the module reference at the location listed above. DESCRIPTION This module implements specialized container datatypes providing alternatives to Python's general purpose built-in containers, dict, list, set, and tuple. * namedtuple factory function for creating tuple subclasses with named fields * deque list-like container with fast appends and pops on either end * ChainMap dict-like class for creating a single view of multiple mappings : |
Параметры
Метод help() принимает максимум один параметр.
object передается в help()
Введите следующую команду.
|
1 |
help(list) |
Вывод:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
Help on class list in module builtins: class list(object) | list() -> new empty list | list(iterable) -> new list initialized from iterable's items | | Methods defined here: | | __add__(self, value, /) | Return self+value. | | __contains__(self, key, /) | Return key in self. | | __delitem__(self, key, /) | Delete self[key]. | | __eq__(self, value, /) | Return self==value. | | __ge__(self, value, /) | Return self>=value. | | __getattribute__(self, name, /) : |
Строка передается в качестве аргумента
Если строка передается в качестве аргумента, данная строка ищется как имя модуля, функции, класса, метода, ключевого слова или раздела документации, и печатается страница справки.
См. следующую команду.
|
1 |
help('print') |
Вывод:
|
1 2 3 4 5 6 7 8 9 10 11 |
Help on built-in function print in module builtins: print(...) print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) Prints the values to a stream, or to sys.stdout by default. Optional keyword arguments: file: a file-like object(stream); defaults to the current sys.stdout. sep: string inserted between values, default a space. end: string appended after the last value, default a newline. flush: whether to forcibly flush the stream.(END) |
Если вы хотите выйти из справочной консоли, введите команду quit.
Определение help() для пользовательского класса и функций
Мы можем определить вывод функции help() для наших пользовательских классов и функций, указав docstring (строку документации).
По умолчанию в качестве строки документации используется первая строка комментария в теле метода. Его окружают три двойных кавычки.
Допустим, у нас есть файл python help_examples.py со следующим кодом.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
def add(a, b): """ This function adds the given integer arguments :param a: integer :param b: integer :return: integer """ return a + b class Student: """ Student class, mapped to "student" table in Database """ enrollno = 0 name = '' def __init__(self, i, n): """ Student object constructor :param i: integer, must be positive :param n: string """ self.enrollno = i self.name = n |
Давайте посмотрим, как получить указанную выше строку документации в консоли Python.
Прежде всего, нам нужно будет выполнить приведенный выше скрипт в консоли, чтобы загрузить нашу функцию и определение класса. Мы можем сделать это с помощью команды exec().
Теперь введите следующую команду.
|
1 2 |
>>> exec(open("help_examples.py").read()) >>> help('help_examples') |
Вывод:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
elp on module help_examples: NAME help_examples CLASSES builtins.object Student class Student(builtins.object) | Student class, mapped to "student" table in Database | | Methods defined here: | | __init__(self, i, n) | Student object constructor | :param i: integer, must be positive | :param n: string | | ---------------------------------------------------------------------- | Data descriptors defined here: | | __dict__ | dictionary for instance variables(if defined) |
Итак, мы определили пользовательский класс и функции.
