Python: добавить переменную в область импортируемой функции
Рассмотрим следующую ситуацию:
#module.py
def test():
foo = bar+'foo'
print foo
if __name__ == '__main__':
bar='test'
test()
Основной файл:
#main.py
import module
bar = 'test'
module.test()
Запуск main.py, очевидно, генерирует NameError
, Я знаю, что есть несколько способов исправить это (например, переопределить функцию в main.py), но мой вопрос: как можно добавить переменную bar в область действия функции без изменения кода module.py и в целом, что считается наилучшей практикой в такой ситуации?
Редактировать: Как насчет того же вопроса, используя from module import *
?