gpt4 book ai didi

python - 在 Python 中的函数内编写类

转载 作者:行者123 更新时间:2023-12-01 05:09:14 25 4
gpt4 key购买 nike

我正在尝试在函数中编写一个类...如下所示:

def func(**args):
class BindArgs(object):
foo = args['foo']
print 'foo is ', foo
def __init__(self,args):
print " hello, I am here"

f = func(foo=2)

我希望 print 会被执行..但是 init block 没有被执行...尽管 print 'foo is ' stub 运行...我错过了什么?

我想了解这个模块是如何工作的( https://github.com/tweepy/tweepy/blob/master/tweepy/binder.py )?

最佳答案

您只需要返回该类的一个实例...

def func(**args):
class BindArgs(object):
foo = args['foo']
print 'foo is ', foo
def __init__(self,args):
print " hello i am here"
return BindArgs(args) #return an instance of the class

f = func(foo=3)

如果您想稍后调用它,就像评论中的示例一样,您可以这样做

def func(**args):
class BindArgs(object):
foo = args['foo']
print 'foo is ', foo
def __init__(self,args):
print " hello i am here"
return BindArgs

f = func(foo=3)
f(args="yellow")

关于python - 在 Python 中的函数内编写类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24520435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com