导航:首页 > 方法技巧 > 如何理解方法调用的原理

如何理解方法调用的原理

发布时间:2023-10-10 06:59:27

㈠ Python方法对象的理解与运用

9.3.4. 方法对象
通常,方法通过右绑定方式调用:
x.f()
在 MyClass 示例中,这会返回字符串 'hello world'。然而,也不是一定要直接调用方法。 x.f 是一个方法对象,它可以存储起来以后调用。例如:
xf = x.f
while True:
print(xf())
会不断的打印 hello world。
调用方法时发生了什么?你可能注意到调用 x.f() 时没有引用前面标出的变量,尽管在 f() 的函数定义中指明了一个参数。这个参数怎么了?事实上如果函数调用中缺少参数,Python 会抛出异常--甚至这个参数实际上没什么用……
实际上,你可能已经猜到了答案:方法的特别之处在于实例对象作为函数的第一个参数传给了函数。在我们的例子中,调用 x.f() 相当于 MyClass.f(x) 。通常,以 n 个参数的列表去调用一个方法就相当于将方法的对象插入到参数列表的最前面后,以这个列表去调用相应的函数。
如果你还是不理解方法的工作原理,了解一下它的实现也许有帮助。引用非数据属性的实例属性时,会搜索它的类。如果这个命名确认为一个有效的函数对象类属性,就会将实例对象和函数对象封装进一个抽象对象:这就是方法对象。以一个参数列表调用方法对象时,它被重新拆封,用实例对象和原始的参数列表构造一个新的参数列表,然后函数对象调用这个新的参数列表。

阅读全文

与如何理解方法调用的原理相关的资料

热点内容
日本分体吸虫检测方法 浏览:456
吃得多撑得慌最快的解决方法 浏览:973
检测银离子方法 浏览:821
十二岁孩子低热怎么处理方法 浏览:613
手机眼睛测试方法 浏览:147
如何用简单的方法提取指纹 浏览:243
刺血治疗面瘫方法 浏览:716
成本税的计算方法 浏览:548
会办事的方法有哪些 浏览:326
h2扶手异响解决方法 浏览:966
按摩牙的正确方法图片 浏览:57
香薰片的使用方法 浏览:717
红花油使用方法 浏览:170
撒网的方法和步骤图解 浏览:465
用什么方法要宝宝呢 浏览:633
新手健身的方法和技巧 浏览:476
二氧化硅检测方法红外 浏览:53
香菜种植的几种方法 浏览:346
学习方法应如何制定 浏览:270
如何通过调理去小肉粒最简单方法 浏览:32