对Python Class之间函数的调用关系详解


Posted in Python onJanuary 23, 2019

假设有Class A 和 Class B两个类,Class A中定义了a(),Class B中定义了b().

现在我想在Class B中调用 Class A中的函数a()。此处介绍三种调用方法:

方法一:

在Class B中所定义的fuction()中声明Class A的对象a,然后用对象a来调用Class A的函数a().

最后在main中声明Class B的对象b,让b调用该类中的fuction().

#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
class A():
 def __init__(self,parent):
 self.parent = parent
 
 def a(self):
 print 'Class A'
 
 
class B():
 def fuction(self):
 a = A(None)
 a.a()
 
if __name__ == '__main__':
 b = B()
 b.fuction()

方法二:

在Class B的__init__()中将Class A和Class B产生关联,具体方法如下code。

首先在main中声明Class A的对象a,然后将对象a传入到Class B的__init__(self,object)中,这样self.object就指向Class A。

就可以调用Class A中的函数了。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
class A():
 def __init__(self,parent):
 self.parent = parent
 
 def a(self):
 print "Class A"
 
class B(object):
 def __init__(self,object):
 self.object = object
 self.object.a()
 
 def b(self):
 print "Class B"
 
if __name__ == '__main__':
 
 a = A(None)
 b = B(a)
 b.b()

方法三:

直接在Class B中声明Class A的对象,该对象是Class B的self.A_object。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
class A():
 
 def a(self):
 print "Class A"
 
class B(object):
 def __init__(self):
 self.A_object = A()
 self.A_object.a()
 
 def b(self):
 print "Class B"
 
if __name__ == '__main__':
 
 b = B()
 b.b()

以上这篇对Python Class之间函数的调用关系详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python ElementTree 基本读操作示例
Apr 09 Python
python教程之用py2exe将PY文件转成EXE文件
Jun 12 Python
Python装饰器的函数式编程详解
Feb 27 Python
python 网络编程常用代码段
Aug 28 Python
python traceback捕获并打印异常的方法
Aug 31 Python
python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)
Apr 01 Python
python如何实现代码检查
Jun 28 Python
Python (Win)readline和tab补全的安装方法
Aug 27 Python
Python爬取破解无线网络wifi密码过程解析
Sep 17 Python
Tensorflow实现多GPU并行方式
Feb 03 Python
python如何编写类似nmap的扫描工具
Nov 06 Python
分享Python异步爬取知乎热榜
Apr 12 Python
浅谈python函数调用返回两个或多个变量的方法
Jan 23 #Python
Django JWT Token RestfulAPI用户认证详解
Jan 23 #Python
python实现QQ邮箱/163邮箱的邮件发送
Jan 22 #Python
python实现年会抽奖程序
Jan 22 #Python
在python中实现强制关闭线程的示例
Jan 22 #Python
Python实现简单石头剪刀布游戏
Jan 20 #Python
python石头剪刀布小游戏(三局两胜制)
Jan 20 #Python
You might like
php函数实现判断是否移动端访问
2015/03/03 PHP
php实现求相对时间函数
2015/06/15 PHP
LINUX下PHP程序实现WORD文件转化为PDF文件的方法
2016/05/13 PHP
URI、URL和URN之间的区别与联系
2006/12/20 Javascript
jQuery 技巧大全(新手入门篇)
2009/05/12 Javascript
js弹出的对话窗口永远保持居中显示
2012/12/15 Javascript
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
2014/03/18 Javascript
jquery果冻抖动效果实现方法
2015/01/15 Javascript
js实现简单的联动菜单效果
2015/08/19 Javascript
js判断移动端是否安装某款app的多种方法
2015/12/18 Javascript
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
2017/03/25 jQuery
vue生成随机验证码的示例代码
2017/09/29 Javascript
jQuery插件实现弹性运动完整示例
2018/07/07 jQuery
Vue组件间通信 Vuex的用法解析
2019/08/05 Javascript
p5.js临摹动态图形实现方法详解
2019/10/23 Javascript
微信内置开发 iOS修改键盘换行为搜索的解决方案
2019/11/06 Javascript
[03:12]完美世界DOTA2联赛PWL DAY7集锦
2020/11/06 DOTA
Django静态资源URL STATIC_ROOT的配置方法
2014/11/08 Python
python实现文件路径和url相互转换的方法
2015/07/06 Python
python实现简单聊天应用 python群聊和点对点均实现
2017/09/14 Python
解决python matplotlib imshow无法显示的问题
2018/05/24 Python
Linux下Python安装完成后使用pip命令的详细教程
2018/11/22 Python
在Pycharm中修改文件默认打开方式的方法
2019/01/17 Python
Python实现爬取马云的微博功能示例
2019/02/16 Python
python发送多人邮件没有展示收件人问题的解决方法
2019/06/21 Python
python:按行读入,排序然后输出的方法
2019/07/20 Python
python opencv 实现对图像边缘扩充
2020/01/19 Python
Docker部署Python爬虫项目的方法步骤
2020/01/19 Python
Python集合操作方法详解
2020/02/09 Python
Python控制台实现交互式环境执行
2020/06/09 Python
NFL加拿大官方网上商店:NHLShop.ca
2019/03/12 全球购物
就业协议书怎么填
2014/04/11 职场文书
趵突泉导游词
2015/02/03 职场文书
2015年销售人员工作总结
2015/04/07 职场文书
Python爬虫数据的分类及json数据使用小结
2021/03/29 Python