Python:类中可忽略的参数。

时间:2014-04-03 17:30:12

标签: python class arguments

我有一个带有3个参数的类,但是,有时我希望能够只向该类传递两个参数,所以如果没有任何内容传递给第三个参数,它将转到默认值。

我想做的就是这样(伪代码)

class car(object):

    def __init__(self, color, length, numWheels):

          if numWheels == null:
              numWheels = 4

在Py中有没有办法做到这一点?

1 个答案:

答案 0 :(得分:3)

您可以使用默认参数值

def __init__(self, color, length, numWheels = 4):

所以你可以这样称呼它:

c = car('black', 5, 8)
c = car('black', 5)

备注:

  • 我建议您关注Python naming conventions。将您的班级命名为Car,而不是car

  • Python中不存在
  • null。您应该阅读None(类似)。

  • 使用默认参数值时,您必须注意,如果它是一个可变对象,它将被一次评估,而不是每次创建一个对象。