我真的很感激你是否可以快速解决我遇到的这个小问题.到目前为止,在编程中,我已经完成了一些C,但我对如何通过Python中的函数传递变量感到困惑.
我确信这个问题已被多次询问,但我不知道该搜索什么.
我的代码是:
x=0
def getinput(x):
x = input('Enter x: ')
def addtwo(x):
x = x + 2
def printans(x):
print 'x is', + x
getinput(x)
addtwo(x)
printans(x)
Run Code Online (Sandbox Code Playgroud)
printans
总是打印出来0
.我确定这是因为函数内部的变量是本地的,但我不知道如何在python中修复它.
谢谢您的帮助!
问题是你没有返回你在函数中获得/计算的值.
我不会给你所有的代码,但如果你理解这个例子,你将能够根据需要对你自己代码的其余部分进行必要的调整,作为学习用Python编程的一部分.
def addtwo(x):
x = x + 2 # compute your result
return x # return the result to caller
result = addtwo(5) # save the returned value
print result # print it out
Run Code Online (Sandbox Code Playgroud)
产量
7
Run Code Online (Sandbox Code Playgroud)
你想要做类似于getinput()
函数的事情,因为它获得了你想在程序中使用的值.与此相反printans()
,只需要打印信息,但不会计算需要返回给您的任何信息.
请注意,随着您对此更加熟悉,您可以缩短代码/表达式,因此对于上面的示例,您的整个函数可能包含
def addtwo(x):
return x + 2
Run Code Online (Sandbox Code Playgroud)
但在此之前,明确地逐步做事并没有错.
归档时间: |
|
查看次数: |
101 次 |
最近记录: |