Документация по Python

Идиомы Python

В: Документация по Python

Введение

Примеры

Словарные инициализации ключа

Предпочитают dict.get метод , если вы не уверены , что если ключ присутствует. Это позволяет вам вернуть значение по умолчанию, если ключ не найден. Традиционный метод dict[key] поднимет KeyError исключение.

Вместо того, чтобы делать

 def add_student():
    try:
        students['count'] += 1
    except KeyError:
        students['count'] = 1

 

Делать

 def add_student():
        students['count'] = students.get('count', 0) + 1 

Переключение переменных


Используйте проверку истинности значения

Python неявно преобразует любой объект в логическое значение для тестирования, поэтому используйте его везде, где это возможно.

 # Good examples, using implicit truth testing
if attr:
    # do something

if not attr:
    # do something

# Bad examples, using specific types
if attr == 1:
    # do something

if attr == True:
    # do something

if attr != '':
    # do something

# If you are looking to specifically check for None, use 'is' or 'is not'
if attr is None:
    # do something

 

Как правило, это создает более читаемый код и, как правило, намного безопаснее при работе с неожиданными типами.

Нажмите здесь для получения списка того , что будет оцениваться в False .

Проверка на «__main__», чтобы избежать неожиданного выполнения кода

Это хорошая практика , чтобы проверить программу вызывающей __name__ переменную перед выполнением кода.

 import sys

def main():
    # Your code starts here

    # Don't forget to provide a return code
    return 0

if __name__ == "__main__":
    sys.exit(main())


 

Использование этого шаблона гарантирует, что ваш код выполняется только тогда, когда вы ожидаете, что он будет; например, когда вы запускаете файл явно:

 python my_program.py


 

Преимущество, однако, приходит если вы решили import файл в другой программе (например , если вы пишете его как часть библиотеки). Вы можете import файл, а __main__ ловушка будет гарантировать , что код не выполняется неожиданно:

# A new program file
import my_program        # main() is not run

# But you can run main() explicitly if you really want it to run:
my_program.main()

Синтаксис

Параметры

Примечания

Еще от кодкамп
Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.