Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
справочник.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
39.17 Кб
Скачать

Если программа не запускается

Возможные сообщения об ошибках и причины их появления:

сообщение

смысловой перевод

код, вызвавший ошибку

возможное исправление

NameError: name 'b' is not defined

переменная ‘b’ не существует

a = b +1

b = 10 a = b + 1

if a > 0

^

SyntaxError: invalid syntax

синтаксическая ошибка (нет двоеточия)

if a > 0

print('+')

if a > 0:

print('+')

def test:

^

SyntaxError: invalid syntax

синтаксическая ошибка (нет скобок)

def test:

print('test')

test()

def test():

print('test')

test()

нет сообщений, но не запускается функция

пропущены скобки

def test:

print('test')

test

def test:

print('test')

test()

print(a)

^

IndentationError: expected an indented block

требуется отступ

a = 10

if a > 0:

print(a)

a = 10

if a > 0:

print(a)

UnboundLocalError: local variable 'color' referenced before assignment

переменная должна получить значение прежде, чем мы на это значение будем смотреть

def test():

while a < 10:

a += 1

test()

def test(): a = 1

while a < 10:

a += 1

test()

print('!')

^

IndentationError: unindent does not match any outer indentation level

на одном уровне отступа разное количество символов отступа или смешаны типы отступов (в одной строке 4 пробела, а в другой – символ табуляции)

a = 10

if a > 0:

print(a)

print('!')

a = 10

if a > 0:

print(a)

print('!')

print(a)

^

IndentationError: unexpected indent

отступ не нужен

a = 10

print(a)

a = 10

print(a)

print (a+b)

TypeError: unsupported operand type(s) for +: 'int' and 'str'

невозможно выполнить операцию «+» для числа и строки

a = 10

b = ‘10’

print (a+b)

a = ‘10’

b = ‘10’

print (a+b)

или

a = 10

b = 10

print (a+b)

a += 2

TypeError: 'int' object is not iterable

попытка добавить к списку целое число (нужно добавлять список, состоящий из одного значения)

a = [1,2,3,4]

a += a[0]

a = [1,2,3,4]

a += [a[0]]

или

a = [1,2,3,4]

a += a[:1]

test()

TypeError: test() takes exactly 1 argument (0 given)

функция не получила ожидаемого аргумента

def test(a):

print(‘!’)

test()

def test(a):

print(‘!’)

test(10)

или

def test():

print(‘!’)

test()

или

def test(a=10):

print(a)

test()

test(10)

TypeError: test() takes no arguments (1 given)

функция получила аргументы, который не ожидался

def test():

print(a)

test(10)

def test(a):

print(a)

test(10)

или

def test():

a = 10

print(a)

test()

print(a[4])

IndexError: list index out of range

попытка обратиться к элементу последовательности, которого не существует.

a=[1,2,3,4] print(a[4])

a=[1,2,3,4] print(a[3])