Я использую pycharm
и перечисляет все ошибки/предупреждения, связанные с кодом. Хотя я понимаю большинство из них, я не уверен в этом "Shadows name xyz from the external scope". Есть несколько сообщений SO по этому поводу: Насколько плохо скрываются имена, определенные во внешних областях?, но затем они, похоже, обращаются к глобальной переменной.
В моем случае моя функция __main__
имеет несколько имен переменных, а затем вызывает другую функцию sample_func
, которая снова использует эти имена переменных (в первую очередь имена переменных цикла). Я предполагаю, что у меня есть другая функция, область для этих переменных будет локальной, однако предупреждение, похоже, предполагает иное.
Любые мысли? Для справки здесь приведен код:
def sample_func():
for x in range(1, 5): --> shadows name x from outer scope
print x
if __name__ == "__main__":
for x in range(1, 5):
sample_func()