首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python面向对象编程的基本问题

Python面向对象编程的基本问题
EN

Stack Overflow用户
提问于 2011-04-14 01:48:59
回答 2查看 225关注 0票数 1

我很难掌握一个类的方法中的变量,并且正在寻求对这些变量如何工作的解释,以帮助我更好地理解它。

例如:

时间类内部的

代码语言:javascript
复制
def __init__(self, hour,minute, second)
    self.hour = hour
    self.minute = minute
    self.second = second

def print_time(self):
    print '%.2d:%.2d:%.2d' % (self.hour, self.minute, self.second)

time = Time(h,m,s)
time.print_time()

“自我”变量的变化在哪里发生?为什么这个方法不叫做(看起来更直截了当的)为:方法(var1(Subject),var2,var3,var4)?而不是subject.method(var2,var3,var4)?(我知道我对这件事的理解很不稳定,如果我的任何术语不正确,我很高兴得到纠正)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-14 01:53:31

  1. 魔术。确切地说,Python特有的魔力;其他语言可能(而且经常会)选择以不同的方式进行。
  2. 这是可能的。在Python中,当Class.method(obj)Class的实例时,objClass是相同的。不过,__init__()是一个特例。
票数 4
EN

Stack Overflow用户

发布于 2011-04-14 02:30:31

你从哪弄来这些密码的?这毫无意义。

您应该看看"如何像计算机科学家那样思考“,它的代码示例与您发布的类似,只是它是正确的,并且解释了变量范围。请参阅上述URL的15.6节。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5657712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档