Я написал некоторый код на Python, который имеет некоторые глобальные константы и глобальные переменные (глобальные в модуле).Некоторые из глобальных переменных впоследствии изменяются в модуле функциями (например, функцией, которая получает аргументы командной строки).Код работает просто отлично, но Pylint жалуется:
(1) глобальные переменные являются недопустимыми именами, потому что это за пределами функции и ожидает, что это все заглавные буквы.
(2) Pylint жалуетсяоб использовании глобального ключевого слова
Вот пример:
DEFAULT_GLOBAL_VAR1 = some value
global_var1 = DEFAULT_GLOBAL_VAR1
def get_cmd_line_args():
global global_var1
global_var1 = <cmd line value>
... следуют дополнительные определения, которые изменяют некоторые другие глобальные переменные.
(1) ПочемуPython / Pylint не распознает строчные глобальные имена переменных модуля?Я знаю, что глобальные переменные осуждаются, но иногда они необходимы.Как Pythonic обрабатывает предупреждения Pylint о недопустимых именах глобальных переменных?
(2) Мне не нравится идея отключения предупреждений Pylint;Есть ли другой способ, лучший способ справиться с этим сценарием?