【发布时间】:2019-01-07 11:55:17
【问题描述】:
我有这样的事情:
class updateMyNumber:
def __init__(self, number):
self.number = update_number(number)
def update_number(self, number):
self.number = number * 2
inst = updateMyNumber(5)
我收到以下错误:
NameErrorTraceback(最近一次调用最后一次) 在 () ----> 1 inst = updateMyNumber(5)
in init(自我,数字) 1类updateMyNumber: 2 def init(自我,数字): ----> 3 self.number = update_number(number) 4 5 def update_number(self, number):
NameError: name 'update_number' 未定义
我希望 inst 返回 25。定义类的最佳方式是什么?
注意:我不想写 self.number = number * 2
【问题讨论】:
-
"注意:我不想写 self.number = number * 2" 然后使用另一种语言。显式的
self将保留在 Python 中。我想如果你真的想的话,你可以重构你所有的代码来使用闭包和嵌套范围for simulating classes。不过,我建议只使用预期的语言结构。
标签: python