Я довольно новичок в кодировании, и в настоящее время изучаю свой первый язык (python), используя книгу «Learn Python the Hard Way», но это не конкретное упражнение в книге, и я просто тренируюсь, пока я читаю код для Упражнение 23 и в настоящее время я просто пытаюсь выяснить, если это вообще возможно ...Как импортировать определенную переменную из raw_input в импортированный файл?
Мой первый файл pr1.py:
def func():
a = float(raw_input("Enter Your Age:"))
b = float(raw_input("Enter Your Weight:"))
c = float(raw_input("Enter Your Height:"))
age = "a"
weight = "b"
height = "c"
if __name__ == "__main__":
print("This is pr1.py")
else:
print("%s is being imported to another file") % __name__
Мой второй файл pr2.py
import pr1
def func():
x = raw_input("Enter Your Race:")
y = raw_input("Enter Your Gender:")
z = raw_input("Enter Your Language:")
print "Lets find your numbers"
pr1.func()
print "Lets find your identity"
func()
race = "x"
gender = "y"
language = "z"
if __name__ == "__main__":
print("This is pr2.py")
else:
print("%s is being imported into another file") % __name__
Это мой третий файл pr3.py
import pr1
print "%s = a %s = b %s = c" % (age, weight, height)
import pr2
print "%s = x, %s = y, %s = z" % (race, gender, language)
Когда я бегу pr3.py и закомментируйте сценарии «печать» линия 3 и линия 7 это то, что я получаю:
python pr3.py
pr1 is being imported to another file
Lets find your numbers
Enter Your Age:25
Enter Your Weight:224
Enter Your Height:76
Lets find your identity
Enter Your Race:white
Enter Your Gender:male
Enter Your Language:english
pr2 is being imported into another file
и я ожидаю, что файл pr3.py напечатает эти инструкции с ранее заданной переменной.
, но вместо этого он приходит с этой ошибкой:
pr1 is being imported to another file
Traceback (most recent call last):
File "pr3.py", line 3, in <module>
print "%s = a %s = b %s = c" % (age, weight, height)
NameError: name 'age' is not defined
Теперь, когда я запускаю мой последний файл в команде, я ожидал, что импортировать предыдущие 2 файла, так что я могу ввести данные, которые я поставил в raw_input, а затем использовать его в других файлах ... но кажется, что как только оба файла будут импортированы, и я ввожу данные в их соответствующие raw_input, кажется, что pr3.py забывает исходный ввод и соответствующую им переменную.
Пожалуйста, простите меня, если мне не хватает каких-то очевидных знаний, которые могли бы исправить все это, но я очень новичок в кодировании, и даже месяц назад я даже не знал, что вы можете создать каталог в терминале.
Спасибо за чтение, и я был бы признателен за любую помощь.
спасибо за взятие время для подробного объяснения, которое действительно помогло много! – Niles
@ Нильс, ты добрый. – EL3PHANTEN