Python_tutorial
  • Вступление
  • Web
    • Введение в web-программирование
  • Основы программирования
    • Файл-менеджмент
    • Алгоритм. Блок-схема
    • Обзор языков программирования
  • Введение в Python
    • Особенности языка Python
    • Установка. Использование
    • Основные определения. Простые типы данных
    • Переменные*
    • Встроенные функции. f-строки
    • Ошибки
    • Основы командной строки
  • Операторы ветвлений, циклы, исключения
    • Условные конструкции и их синтаксис
    • Циклы
    • Обработка исключений
  • Строки. Списки
    • Строки
    • Регулярные выражения (regex)*
    • Списки
    • Изменяемые и неизменяемые объекты в Python*
    • Практика
  • Функции
    • Введение в функции. Модули
    • Функции. Продолжение
    • Функциональное программирование
    • Замыкания. Карринг. Декораторы.
    • Практика
  • Практика программирования
    • Стандарты написания кода
    • Основы тестирования*
    • Аннотации типов*
  • Основы алгоритмов
    • Введение
    • Алгоритмы поиска
    • Алгоритмы сортировки
  • Коллекции
    • Введение
    • Кортежи
    • Словари
    • Множества
    • Практика
  • Файлы
    • Введение
    • Работа с файлами в Python
  • Системы контроля версий
    • Введение в Git
  • Проект 1: Десктопное приложение
    • План работы
  • Основы ООП
    • Введение в ООП
  • Последние обновления
  • Обратная связь
    • Связаться с нами
Powered by GitBook
On this page
Edit on GitHub
  1. Практика программирования

Стандарты написания кода

PreviousПрактикаNextОсновы тестирования*

Last updated 1 year ago

  • В каждом языке программирования есть свой стандарт написания кода — набор правил, который рекомендовано соблюдать

  • Стандарт, принятый в Python, называется

Посмотрите на примеры кода. Попробуйте предположить, что делает функция:

Первый пример
def s(i,d,s):
 t=0
 for j in i:
  t+=j
 if d:
  t-=(t*s)
 return t
Второй пример
def calculate_total_cost(items, discount, size_of_discount):
    total = 0
    for item_cost in items:
        total += item_cost
    if discount:
        total -= (total * size_of_discount)
    return total

Основные моменты:

  • 4 пробела в качестве отступа. Не используйте табуляцию.

  • Именуйте функции и переменные в стиле "snake_case"

  • Соблюдайтедлину строки 79 символов, длину комментариев 72 символа

  • Вокруг операторов ставьте пробелы. Кроме присвоения для аргументов функций — тогда пробел вокруг "=" не ставится

  • Используйте пропуск строки для отделения смысловых частей кода

  • Используйте пропуск в две строки между функциями

Несколько примеров:

# YES — ДЕЛАЙТЕ ТАК:
spam(ham[1], {eggs: 2})
spam(1)
x = 1
y = 2
long_variable = 3
#----------
i = i + 1
submitted += 1
x = x*2 - 1
hypot2 = x*x + y*y
c = (a+b) * (a-b)
#----------
def complex(real, imag=0.0):
    return magic(r=real, i=imag)

#NO — ВНИМАНИЕ (!) — ТАК НЕ РЕКОМЕНДОВАНО ДЕЛАТЬ:
spam( ham[ 1 ], { eggs: 2 } )
spam (1)
x             = 1
y             = 2
long_variable = 3
#----------
i=i+1
submitted +=1
x = x * 2 - 1
hypot2 = x * x + y * y
c = (a + b) * (a - b)
#----------
def complex(real, imag = 0.0):
    return magic(r = real, i = imag)
PEP 8