Допустим, у меня есть модуль foo.py
, который содержит следующую функцию:
def bar(var=somedict):
print(var)
В моей основной программе, main.py
, я импортирую этот модуль, определяю переменную somedict
и затем запускаю функцию bar
:
from foo import *
somedict = 'foobar'
bar()
Идея состоит в том, что somedict
передается как параметр по умолчанию, без необходимости явно его указывать (чего я хотел бы избежать для реальной программы, которую я пишу).
Однако, Python бросает NameError: name 'somedict' is not defined
. Как я могу все еще импортировать модуль и получить желаемую «передачу переменной по умолчанию»? Спасибо!