Как говорит программерская мудрость — старый «баг» лучше новых двух. Чтобы не допускать размножения ошибок, надо знать их в лицо:
- ImportError
Ошибка при импорте модуля (скорее всего, неправильно указано его имя):
- >>> import appuifwww
- Traceback (most recent call last):
- File " ", line 1, in ?
- ImportError: No module named appuifwww
- >>>
- IndexError
Ошибка, которая генерируется, когда осуществляется попытка обратиться к списку (строке, кортежу) по индексу, превышающему его длину:
- >>> list = [1, 2, 3]
- >>> list [9]
- Traceback (most recent call last):
- File " ", line 1, in ?
- IndexError: list index out of range
- >>>
- MemoryError
Ошибка из-за нехватки оперативной памяти (например, когда вы пытаетесь создать очень большой список функцией range):
- >>> range (10000000)
- Traceback (most recent call last):
- File " ", line 1, in ?
- MemoryError
- >>>
- NameError
Ошибка имени (используется несуществующая переменная):
- >>> 1 + a
- Traceback (most recent call last):
- File " ", line 1, in ?
- NameError: name 'c' is not defined
- >>>
- SyntaxError
Синтаксическая ошибка (будьте внимательны!):
- >>> 1 + 0 +
- File " ", line 1
- 1+0+
- ^
- SyntaxError: invalid syntax
- >>>
- TypeError
Ошибка генерируется, когда осуществляется попытка применить операцию к объекту не того типа (например, складывать число и строку):
- >>> 1 + ‘2’
- Traceback (most recent call last):
- File " ", line 1, in ?
- TypeError: unsupported operand types for +: 'int' and 'str'
- >>>
- ZeroDivisionError
Ошибка деления на ноль:
- >>> 1 / 0
- Traceback (most recent call last):
- File " ", line 1, in ?
- ZeroDivisionError: integer division or modulo by zero
- >>>