【发布时间】:2018-10-30 05:26:51
【问题描述】:
当我运行此代码时,它给出的输出为 10 10 10 12 24 10。谁能帮助我理解输出?我是 python 编程新手
class A:
x = 10
class B(A):
pass
class C(A):
pass
print (A.x)
print (B.x)
print (C.x)
A.x += 2
B.x *= 2
C.x -= 2
print (A.x)
print (B.x)
print (C.x)
【问题讨论】:
-
欢迎来到 Stack Overflow!不幸的是questions asking for: books, libraries, tutorials, tools are off-topic,应该关闭。 Stack Overflow 是一个 Questions 和 Answers 网站,用于解决特定的编程问题。
-
你能证明自己任何努力解决这个问题吗?
-
为什么在 Python 代码中需要使用
class而不是def(函数)?为什么只是class?为什么需要解释示例代码?我认为,您的代码演示了一个类从另一个基类的继承:class main_class(base_class):但最好是 Python 教科书或手册:docs.python.org/2/tutorial/classes.html -
我认为这是一个非常有趣的问题。 B.x*=2 创建一个新对象。在它只是对 A.x. 的引用之前。 Amd 然后 C.x 仍然引用 A.x 因此你最后得到 10。请更新标题并添加对您的具体问题的描述(您期望什么以及与您的期望有什么不同)。如果你这样做,我将收回我的反对票。
标签: python class oop object inheritance