Import переменных из функций других файлов Python

Необходимость импорта значений переменных из функций других файлов. Но при попытке сделать это получаю ошибку вида ImportError:

Traceback (most recent call last):
  File "main.py", line 2, in <module>
    import folder
  File "---path---\folder\__init__.py", line 1, in <module>
    from main import root
ImportError: cannot import name 'root' from 'main' (---path---\main.py)

Детали: пытаюсь в отдельном файле писать "характеристики" обьектов и классов при создании приложения на tkinter чтобы не засорять основное приложение. Для этого хочу импортировать root, чтобы сделать bind от кнопки, и перенести фокус на него.

Код файла ---path---\main.py:

from tkinter import *
import folder

def set_app():
    global root, btn

    root = Tk()
    btn = Button(master=root)
    btn.pack()
    # no returns here

if __name__ == '__main__':
    global btn
    set_app()
    folder.some_f(btn)
    root.mainloop()

Код файла ---path---\folder\ __init __.py:

from main import root

def some_f(obj): 
    obj.bind('<ButtonPress>', root.focus())

Python 3.8.10 - 64 bit. Windows 7.


Ответы (0 шт):