通过在A.pyPython的知名度,在功能上
class A
blah = some_fun(d) <----- needs d
def __init__
def a
def b
def c
def d <---- d is inside c
是否有可能在d通过,因为目前blah
不能看到d显而易见的原因?
通过在A.pyPython的知名度,在功能上
class A
blah = some_fun(d) <----- needs d
def __init__
def a
def b
def c
def d <---- d is inside c
是否有可能在d通过,因为目前blah
不能看到d显而易见的原因?
事情是这样的:
def c():
def d():
pass
return d
blah = some_fun(c())
这是一种方式,但c需要返回别的东西,因为它只是用于其他目的而不是返回func d。但我认为它是我的过错,因为它过于笼统,而且Q – ealeon
@ealeon如果你不能返回'd',那么使'd'成为'c'的一个属性或者创建一个新函数,或者最好使它成为一个静态方法班上。 –
可以定义类A
功能c
,在这种情况下,就可以看到里面d
(假设d
定义在前)。那么你可能需要从函数中传出A
,这样外人才能使用它。
有关这种气味的事情就像是在解决手边真正的任务的错误问题。也许你可以澄清你的问题和/或给一个更具体的例子。
你说'C'是一个函数(不是类),和'D'是函数中定义的函数?然后不,除非'c'中有'return d'语句。 –
请先修复你的代码,至少_compiles_ –
这正是我所说的。 @DavidRobinson多数民众赞成我所害怕的。我想我把c放在c之外,然后把d传递给c,然后等等,这可以看到d – ealeon