【发布时间】:2021-09-02 09:10:09
【问题描述】:
我只是在学习,有一个困惑 在这段代码中,我分配了 dice=Dice().. 为什么不直接使用 Dice.roll()?它对我的立场争论大喊大叫;( 您能否澄清一个区别,与函数相比,我为什么需要它?
import random
class Dice:
def roll(self):
a=random.randint(1,6)
b = random.randint(1, 6)
return a,b
dice=Dice()
print(dice.roll())
【问题讨论】:
-
你应该重读面向对象的编程。
dice = Dice()创建一个新的Diceobject 并将其分配给dice变量。同样,您可以像这样创建另一个骰子:dice2 = Dice()。现在您有两个Dice对象,但只有一个Dice类。这类似于您可以在桌子上放置多个骰子,但它们都表现出相同的共同行为。 -
我建议您深入了解一些 Python 教程以了解有关类的更多信息。这个例子没有很好地选择,因为它只做一个函数会做的事情。 SO 不适合替换教程。
-
上面的一些关键字是实例、类和静态方法。