У меня есть python 2.6 script (да, я знаю, что мне нужно обновить не менее 2.7), который выглядит так:
ret_code = 0
def some_func()
global ret_code
...
if __name__ == '__main__':
global ret_code
...
Теперь я получаю предупреждение, если я запустил код: * Синтаксис Предупреждение: имя 'ret_code' назначается перед глобальным объявлением global ret_code *
Зачем мне это предупреждение?
Я могу решить проблему, сделав так:
def some_func()
global ret_code
...
if __name__ == '__main__':
global ret_code
ret_code = 0 #assign 0 here instead of above
...
Тем не менее это не отвечает на мой вопрос. Что не так с исходным кодом?