setattr(obj, attr, value) just calls obj.setattr(attr, value), at least for new-style classes.
setattr(instance, name, value) is syntactic sugar for instance.setattr(name, value).
You would only need to call object.setattr(...) inside a class definition, and then only if directly subclassing object -- if you were subclassing something else, Spam for example, then you should either use super() to get the next item in the heirarchy, or call Spam.setattr(...) -- this way you don't risk missing behavior that super-classes have defined by skipping over them directly to object.
The code is probably using object.setattr for the exact purpose of skipping the superclass's setattr
英文好的麻烦给翻译翻译上面的 4 段话的意思。感谢!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.