Demo1.py
--------
ph=10
def ph():
print("Phone")
def email():
print("Email")
Demo2.py
---------
from Demo1 import ph,email
print(email)
print(ph)
output: Email
<function ph at 0x0000021E81BC3158>
Когда я печатаю переменную ph
в модуле demo2.py, она вызывается функцией, но не переменной ph
. Как получить доступ к переменной ph
?
Ваша переменная и функция имеют одинаковые значения в Demo1.py, ph. Поскольку функция определена позже в скрипте, ph ссылается на функцию. Измените имя, и это должно решить проблему:
# Demo1.py
ph = 10
def phone():
print("Phone")
def email():
print("Email")
Кроме того, поскольку вы уже печатаете внутри функций в Demo1.py, вам не нужно снова печатать их в Demo2.py, но вам нужно будет напечатать значение переменной ph:
# Demo2.py
from Demo1 import ph, phone, email
print(ph)
email
phone
Выход:
10
Phone
Email
определение ph
перезаписывается объявлением функции.
Чтобы получить доступ к переменной, просто переименуйте любой из ph
s.