对python 调用类属性的方法详解


Posted in Python onJuly 02, 2019

测试时候类的调用是经常会用到的。简单看下类的调用使用的方法吧。

来看例子:

目录结构:

对python 调用类属性的方法详解

我们现在要在do_class.py这个文件里调用class_learn.py里的类

代码(do_class.py):

#!/usr/bin/env python3
#coding=utf-8
'''@Author:Jock'''

from all_python_learn.class_and_funcation.class_learn import *

b = Learn(1,2)

b.get()
print(Learn.a)

这里通过from导入了模块class_learn里的类,然后通过类的实例化实例了一个b的对象,然后通过对象b调用了类里的get函数。这里我加了个print(Learn.a)就是想说直接通过类名接上变量名可以调用类的变量。

运行结果:

对python 调用类属性的方法详解

如果我们不实例化直接调用会有什么结果呢?来看看

修改do_class.py为:

对python 调用类属性的方法详解

如果这么写那就报错了,因为没有实例化。

报错:

对python 调用类属性的方法详解

上面的例子是带传入参数的类,也可以有不带参数的类,然后被调用。

把class_learn.py改成下面:

对python 调用类属性的方法详解

在do_class.py就可以这么写:

对python 调用类属性的方法详解

运行结果:

对python 调用类属性的方法详解

通过上面的例子基本知道怎么去调用类里的函数、类里的变量了(这个非常重要,写用例时经常会跨文件去访问类里的属性!!)

但我估计你们在看了上面代码后对self比较疑惑,其实开始类的定义时有讲过,这个是必须写的,是类的实例。

例子里的初始化函数里的

self.x=x #这里的x和y就是实例变量
self.y=y

这是定义了两个变量x和y,并赋给实例self.x和self.y,在后面的所有函数中如果要用到这个两个变量,都需要通过self.x的写法来调用,并且函数的参数列表必须带有self,并且把实例传了进去。否则调用就会报错。

Python 相关文章推荐
Python实现给文件添加内容及得到文件信息的方法
May 28 Python
深入理解python中的浅拷贝和深拷贝
May 30 Python
python2.7到3.x迁移指南
Feb 01 Python
Python使用MD5加密算法对字符串进行加密操作示例
Mar 30 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
通过Pandas读取大文件的实例
Jun 07 Python
使用k8s部署Django项目的方法步骤
Jan 14 Python
Python flask框架post接口调用示例
Jul 03 Python
python3 pillow模块实现简单验证码
Oct 31 Python
解决Tensorflow 内存泄露问题
Feb 05 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
Aug 07 Python
7个关于Python的经典基础案例
Nov 07 Python
python算法题 链表反转详解
Jul 02 #Python
python输入多行字符串的方法总结
Jul 02 #Python
Django高级编程之自定义Field实现多语言
Jul 02 #Python
python 杀死自身进程的实现方法
Jul 01 #Python
python 判断linux进程,并杀死进程的实现方法
Jul 01 #Python
PyCharm-错误-找不到指定文件python.exe的解决方法
Jul 01 #Python
解决pycharm 工具栏Tool中找不到Run manager.py Task的问题
Jul 01 #Python
You might like
php5 and xml示例
2006/11/22 PHP
深入理解:单一入口、MVC、ORM、CURD、ActiveRecord概念
2013/06/06 PHP
php生成xml时添加CDATA标签的方法
2014/10/17 PHP
使用php完成常见的文件上传功能(推荐)
2017/01/13 PHP
php常用经典函数集锦【数组、字符串、栈、队列、排序等】
2019/08/23 PHP
laravel 之 Eloquent 模型修改器和序列化示例
2019/10/17 PHP
escape、encodeURI 和 encodeURIComponent 的区别
2009/03/02 Javascript
js将long日期格式转换为标准日期格式实现思路
2013/04/07 Javascript
javascript初学者常用技巧
2014/09/02 Javascript
jQuery插件实现控制网页元素动态居中显示
2015/03/24 Javascript
javascript数据结构与算法之检索算法
2015/04/04 Javascript
举例讲解jQuery中可见性过滤选择器的使用
2016/04/18 Javascript
Bootstrap框架结合jQuery仿百度换肤功能实例解析
2016/09/17 Javascript
Bootstrap免费字体和图标网站(值得收藏)
2017/03/16 Javascript
canvas轨迹回放功能实现
2017/12/20 Javascript
Node.js如何对SQLite的async/await封装详解
2019/02/14 Javascript
Vue实现点击按钮复制文本内容的例子
2019/11/09 Javascript
微信小程序点击滚动到指定位置的实现
2020/05/22 Javascript
vue项目使用$router.go(-1)返回时刷新原来的界面操作
2020/07/26 Javascript
js实现简单的倒计时
2021/01/28 Javascript
python实现在pickling的时候压缩的方法
2014/09/25 Python
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
Python3中关于cookie的创建与保存
2018/10/21 Python
python学生管理系统开发
2019/01/30 Python
浅析python 中大括号中括号小括号的区分
2019/07/29 Python
django创建最简单HTML页面跳转方法
2019/08/16 Python
django中上传图片分页三级联动效果的实现代码
2019/08/30 Python
利用PyQt5+Matplotlib 绘制静态/动态图的实现代码
2020/07/13 Python
Python基于Webhook实现github自动化部署
2020/11/28 Python
澳大利亚领先的女帽及配饰公司:Morgan&Taylor
2019/12/01 全球购物
可贵的沉默教学反思
2014/02/06 职场文书
初中同学会活动方案
2014/08/22 职场文书
纪检干部对照检查材料
2014/08/22 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
作弊检讨书范文
2015/05/06 职场文书
详细谈谈JavaScript中循环之间的差异
2021/08/23 Javascript