我们可以在一行中创建多个变量,例如:
x, y, z = 1, 2, 3
print(x)
,输出将为1,
我想知道是否有类似的东西可以创建多个空类,所以这样的东西,我知道是错的,但是只是让您了解我的意思:
class X, Y, Z:
pass
非常感谢您!
答案 0 :(得分:5)
否,没有使用这种方式使用类定义的特殊语法。您可以使用type
构造函数,例如:
>>> A, B, C = type('A', (object,), {}), type('B', (object,), {}), type('C', (object,), {})
>>> A, B, C
(<class '__main__.A'>, <class '__main__.B'>, <class '__main__.C'>)
>>>
>>> A()
<__main__.A object at 0x10354d780>
>>> B()
<__main__.B object at 0x1038b1ef0>
>>> C()
<__main__.C object at 0x10354d780>
但是我认为这并不优雅,并且不太可能将单行保持合理的长度。只需遵守完整的类定义即可。