импортирование функции из другого файла
a.py
import b
hello = ("bye")
def hello():
inputa = input("hi")
if input a == 'hi':
b.goodbye()
b.py
import a
bye = ("hello")
def goodbye():
inputb = input("bye")
if input inputb == 'bye':
a.hello()
при запуске любого кода и вводе hi или bye выводит ошибку
Exception has occurred: AttributeError
partially initialized module 'b' has no attribute 'goodbye' (most likely due to a circular import)
пробовал переназывать файлы, функции, но ничего не помогает
Ответы (1 шт):
Автор решения: Kers
→ Ссылка
Циклические импорты в питоне считаются ошибкой. Создайте еще файл main.py в который и вынесите логику вызова этих функций. Или сделайте один файл основным в который будет подгружаться все остальное. По логике обычно программа имеет одну точку входа (в вашем случае файл с запуска которого все начинается).
Для If не нужна доп конструкция input. Напишите лучше так:
if inputb == 'bye':
Аналогично и для а.py