Python 使用函数内声明的值,函数外声明的值
如果定义了如下函数:Python 使用函数内声明的值,函数外声明的值,python,function,variables,Python,Function,Variables,如果定义了如下函数: def plop(plop): ploplop = 1234 if plop == ploplop: print "I plopped" 如何将ploplop带到函数范围之外?返回它,并在另一侧捕获它 def plop(plop): ploplop = 1234 if plop == ploplop: print "I plopped" return plopplop someval = plo
def plop(plop):
ploplop = 1234
if plop == ploplop:
print "I plopped"
如何将ploplop带到函数范围之外?返回它,并在另一侧捕获它
def plop(plop):
ploplop = 1234
if plop == ploplop:
print "I plopped"
return plopplop
someval = plop(1235)
你归还它,然后在另一边捕获它
def plop(plop):
ploplop = 1234
if plop == ploplop:
print "I plopped"
return plopplop
someval = plop(1235)
但全球变量几乎不应该被使用
但是全局变量几乎不应该被使用因为你没有提供足够的信息来给出一个好的答案。这两个函数和变量之间的关系是什么 如果变量表示两个函数操作的某种持久状态,则您希望创建一个包含两个方法和一个成员变量的类:
class Plopper( object ):
ploplop = 1234
def plop( self, ploppity ):
if ploppity == self.ploplop:
print "I plopped" # ew.
def plop2( self, ploppity ):
if ploppity == self.ploplop * 2:
print "I plopped twice"
a = Plopper()
a.plop( 1234 )
a.plop2( 2468 )
如果变量控制函数的行为,并且您只需要确保它们是一致的,则将变量从方法中拉到全局(注意,对于contra user1320237,如果您只读取其值,则不需要将其声明为全局):
你没有提供足够的信息来回答问题。这两个函数和变量之间的关系是什么 如果变量表示两个函数操作的某种持久状态,则您希望创建一个包含两个方法和一个成员变量的类:
class Plopper( object ):
ploplop = 1234
def plop( self, ploppity ):
if ploppity == self.ploplop:
print "I plopped" # ew.
def plop2( self, ploppity ):
if ploppity == self.ploplop * 2:
print "I plopped twice"
a = Plopper()
a.plop( 1234 )
a.plop2( 2468 )
如果变量控制函数的行为,并且您只需要确保它们是一致的,则将变量从方法中拉到全局(注意,对于contra user1320237,如果您只读取其值,则不需要将其声明为全局):
另一种解决方案是向函数添加属性。(由于PLOP太多,我更改了函数名):
另一种解决方案是向函数添加属性。(由于PLOP太多,我更改了函数名):
我在我正在练习的代码上尝试了一种变体,但这并不是我所期望的结果。我想取一个在函数中声明的名为big的变量,并与另一个函数一起使用。好的。但是你仍然必须这样做,否则会导致代码的重大重写。我在我正在练习的代码上尝试了一种变体,但这并不是我所期望的结果。我想取一个在函数中声明的名为big的变量,并与另一个函数一起使用。好的。但您仍然必须这样做,否则将导致代码的重大重写。
def f(plop):
f.ploplop = 1234
if plop == f.ploplop:
print "I plopped"
f(5)
print f.plopplop