gpt4 book ai didi

python - 在 python 中以编程方式向类添加继承?

转载 作者:太空宇宙 更新时间:2023-11-03 12:22:33 24 4
gpt4 key购买 nike

我可以让一个类在 Python 中“在程序中”继承一个类吗?

这是我目前所拥有的:

base = list(cls.__bases__)
base.insert(0, ClassToAdd )
base = tuple( base )
cls = type( cls.__name__, base, dict(cls.__dict__) )

最佳答案

这是一个例子,使用了 Greg Hewgill 的建议:

class Foo(object):
def beep(self):
print('Hi')

class Bar(object):
x = 1

bar = Bar()
bar.beep()
# AttributeError: 'Bar' object has no attribute 'beep'

Bar = type('Bar', (Foo,object), Bar.__dict__.copy())
bar.__class__ = Bar
bar.beep()
# 'Hi'

关于python - 在 python 中以编程方式向类添加继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2783974/

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