2009-11-21 3 views
3

Что происходит, когда я перезагружаю модуль в python, а новый код для модуля синтаксически неверен? Функция перезагрузки (модуля), похоже, не вызывает каких-либо исключений. Есть ли способ определить, была ли перезагрузка успешной или неудачной?Функция перезагрузки python и синтаксически неправильный модуль

+0

когда вы говорите, «перезагрузка ", что ты конкретно имеешь ввиду? – jldupont

+0

Я имел в виду перезагрузку (модуль) встроенной функции. –

ответ

3

Команда перезарядки() должна поднять SyntaxError:

In [34]: import test 
# This works fine 

После внесения синтаксической ошибки в test.py: (изменено импорт -> pimport)

In [35]: reload(test) 
------------------------------------------------------------ 
    File "/home/unutbu/pybin/test.py", line 2 
    pimport itertools 
        ^
SyntaxError: invalid syntax 
+0

+1 для того, чтобы быть быстрее меня при ответе! – jathanism

+0

Thanx много. Думаю, я понял свою ошибку. Я ввел простую синтаксическую ошибку в середине функции. Эта ошибка на самом деле не остановила перезагрузку модуля python. Поскольку я редактировал в Eclipse с PyDev, он заранее показал мне ошибку, и мне было интересно, почему Python позволяет перезагрузить модуль. –

+0

А, я вижу. Спасибо за добавление этого объяснения. – unutbu

Смежные вопросы