🐛 Частые ошибки: типы и строки

← К оглавлению урока

⚡ Топ-3 ошибки

  1. "Возраст: " + 25 — нельзя напрямую склеить строку и число.
  2. value = print("Hi")value получит None.
  3. "C:\Users\Name" без экранирования может сломаться из-за escape-последовательностей.

Ошибка 1. Склейка строки и числа

# main.py
age = 25
print("Возраст: " + age)

Оператор + для строк ждёт другую строку. На этом этапе проще вывести через запятую:

# main.py
age = 25
print("Возраст:", age)
# main.py
result = print("Hi")
print(result)  # None

print() выводит на экран и возвращает None. Если нужен текст как значение, сохраните саму строку.

Ошибка 3. Путать bool и строку

# main.py
is_ready = "True"
print(type(is_ready))  # <class 'str'>

Правильное логическое значение пишется без кавычек:

# main.py
is_ready = True
print(type(is_ready))  # <class 'bool'>

Ошибка 4. Кавычки внутри кавычек

# main.py
print("She said: "Hi"")

Используйте другой тип кавычек или экранирование:

# main.py
print('She said: "Hi"')
print("She said: \"Hi\"")

Ошибка 5. Обратный слэш в пути

# main.py
path = "C:\Users\Student\Documents"

В строках обратный слэш начинает escape-последовательность. Для обычной строки его нужно удвоить:

# main.py
path = "C:\\Users\\Student\\Documents"
print(path)

Ошибка 6. Неправильно ждать перенос строки от end

# main.py
print("one", end="---")
print("two")

Если поменяли end, стандартный перенос строки не добавится. Он появится только в следующем print() или если явно указать \n.