How do I use variables of my def function outside?
本问题已经有最佳答案,请猛点这里访问。
抱歉,我找不到一个更好的表达我的意思不是,所以基本上我正在尝试创建一个脚本,自动完成一个数学问题,但现在我卡住了,无法在论坛上找到一个好的答案。
这里是它的样子
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | print("That's how you type the function : f(x) = a*sin(b(x-h))+k Don't use space!") print("If the value of the variable is unknown type 'None'") import math def start(): y= input("y =") sct = input("sin, cos, tan =") a= input("a =") b= input("b =") x= input("x =") h= input("h =") k= input("k =") print("So if I understand here the problem you want to solve") print(y,"=",a,sct,"(",b,"(",x,"-" ,h,"))",k) QUA = input("Yes or No? :") if QUA =="Yes": print("Good") elif QUA =="No": start() start() |
所以我一直在问一个问题,如果你说"是",它会继续剧本。如果你说"不",它会回到start()。所以当我尝试在这之后使用变量的时候,它只是说
1 2 3 4 5 | >>> print(y) Traceback (most recent call last): File"<pyshell#34>", line 1, in <module> print(y) NameError: name 'y' is not defined |
帮助任何人?
您返回它,否则它在您的函数范围之外是不可访问的。
1 2 3 4 5 6 | def start(): y = input("y =") return y y = start() print(y) |
如果需要多个返回值,可以返回多个。
1 2 3 4 5 6 | def start(): x = input("x =") y = input("y =") return x, y x, y = start() |