10 ошибок начинающих программистов на Python и как их избежать

Онлайн-тренажер Python для начинающих

Изучайте Python легко и без перегрузки теорией. Решайте практические задачи с автоматической проверкой, получайте подсказки на русском языке и пишите код прямо в браузере — без необходимости что-либо устанавливать.

Начать курс

10 ошибок начинающих программистов на Python и как их избежать

Все эти ошибки совершают почти все новички. Зная их заранее — вы сэкономите часы отладки.

1. Перепутаны = и ==

# Ошибка
if x = 5:  # SyntaxError

# Правильно
if x == 5:  # сравнение
x = 5       # присваивание

2. Индексация с 1 вместо 0

lst = [10, 20, 30]
print(lst[1])  # 20, не 10!
print(lst[0])  # 10 — первый элемент

3. Изменение списка во время итерации

# Ошибка — непредсказуемое поведение
for item in lst:
    lst.remove(item)

# Правильно — создать копию
for item in lst[:]:
    lst.remove(item)

4. Неправильный ввод числа

# Ошибка
x = input()  # x — строка, не число!
print(x + 5)  # TypeError

# Правильно
x = int(input())
print(x + 5)

5. Забытый return в функции

# Ошибка
def square(n):
    result = n * n
    # забыли return!

# Правильно
def square(n):
    return n * n

6. Проблемы с отступами

Python использует отступы вместо фигурных скобок. Смешивание пробелов и табов — частая причина ошибок. Используйте только пробелы (4 пробела на уровень).

7. Деление целых чисел

print(7 / 2)   # 3.5 (дробное деление)
print(7 // 2)  # 3   (целочисленное деление)

8. Глобальные переменные внутри функций

x = 10
def change():
    x = 20  # это ЛОКАЛЬНАЯ переменная!
    
change()
print(x)  # всё ещё 10

9. Сравнение с None через ==

# Не рекомендуется
if x == None:

# Правильно
if x is None:

10. Не использовать f-строки

# Старый способ
print("Привет, " + name + "!")

# Современный Python
print(f"Привет, {name}!")

Итог

Эти ошибки встречаются в 80% решений новичков. Запомните их — и ваш код сразу станет чище. Практикуйтесь на задачах PythonLib →

Блоги

Рекомендаций по книгам