pythonclass的使用详情_python 类class基础简明笔记
python 类class基础简明笔记
觉得有用的话,欢迎一起讨论相互学习~
感谢莫烦老师
详情
class 定义一个类
class 定义一个类, 后面的类别首字母推荐以 大写 的形式定义,比如Calculator. 冒号不能缺 class可以先定义自己的属性,比如该属性的名称可以写为 name='Good Calculator'. class后面还可以跟def, 定义一个函数. 比如def add(self,x,y): 加法, 输出print(x+y). 其他的函数定义方法一样,注意这里的self 是默认值.
class Calculator: #首字母要大写,冒号不能缺
name='Good Calculator' #该行为class的属性
price=18
def add(self,x,y):
print(self.name)
result = x + y
print(result)
def minus(self,x,y):
result=x-y
print(result)
def times(self,x,y):
print(x*y)
def divide(self,x,y):
print(x/y)
"""
>>> cal=Calculator() #注意这里运行class的时候要加"()",否则调用下面函数的时候会出现错误,导致无法调用.
>>> cal.name
'Good Calculator'
>>> cal.price
18
>>> cal.add(10,20)
Good Calculator
30
>>> cal.minus(10,20)
-10
>>> cal.times(10,20)
200
>>> cal.divide(10,20)
0.5
>>>
"""
需要特别注意,因为这里的__init__函数为空,因此Calculator()中括号中内容为空,没有任何参数。
class init函数
python 和matlab对于函数和变量的处理在有些地方很相似。例如可以在__init__函数运行时直接为类定义一个变量,并且不需要在类中前置声明。这点作为脚本语言,无疑大大节省了代码量。
__init__可以理解成初始化class的变量,取自英文中initial 最初的意思.可以在运行时,给初始值附值,运行c=Calculator('bad calculator',18,17,16,15),然后调出每个初始值的值。看如下代码。
class Calculator:
name='good calculator'
price=18
def __init__(self,name,price,height,width,weight): # 注意,这里的下划线是双下划线
self.name=name
self.price=price
self.h=height
self.wi=width
self.we=weight
""""
>>> c=Calculator('bad calculator',18,17,16,15)
>>> c.name
'bad calculator'
>>> c.price
18
>>> c.h
17
>>> c.wi
16
>>> c.we
15
>>>
""""
例如,在类类型声明时,name和price变量是声明过得,但是height,width,weight等参数却是在__init__函数时声明的。
如何设置属性的默认值, 直接在def里输入即可,如下:
def init(self,name,price,height=10,width=14,weight=16):查看运行结果, 三个有默认值的属性,可以直接输出默认值,这些默认值可以在code中更改, 比如c.wi=17再输出c.wi就会把wi属性值更改为17.同理可推其他属性的更改方法。
class Calculator:
name='good calculator'
price=18
def __init__(self,name,price,hight=10,width=14,weight=16): #后面三个属性设置默认值,查看运行
self.name=name
self.price=price
self.h=hight
self.wi=width
self.we=weight
""""
>>> c=Calculator('bad calculator',18)
>>> c.h
10
>>> c.wi
14
>>> c.we
16
>>> c.we=17
>>> c.we
17
""""
pythonclass的使用详情_python 类class基础简明笔记相关推荐
- python中扑克牌类设计_Python类的基础设计、使用
类是事物功能和属性的抽象,对象是类的实例化.就像人人都知道小汽车可以干什么什么的,但光想小汽车如何好是没有用的,得开车或坐才能感受到小汽车的好.人脑里的小汽车是抽象的,即类,而坐上的某辆车是小汽车的实 ...
- JDBCUtils工具类的基础学习笔记
注:以下整理笔记来自自己的公众号,适合初学者一起探讨,我也是初学者! 创建一个实体类: package com.zx.bean;public class User {private int id;pr ...
- python新手入门英文词汇_Python新手入门基础英文笔记
1.字符串的操作 user:用户 name:名称/姓名 attibute:字段/属性 Value:值 2.重复/转换/替换/原始字符号 upper:上面 lower:下面 capitalize:用大写 ...
- python类的析构方法是什么_python类的析构方法是什么_python类析构
python __del__ 转自:http://blog.csdn.net/bbdxf/article/details/25774763 最近学习<Python参考手册>学到Class部 ...
- class括号里的object_Python入门 类class 基础篇
记住一句话:类是模板,而实例则是根据类创建的对象. 我初学时对类的理解是从类的字面上,可以片面的认为它是一个种类,它是相似特征的抽像,也就是相似的东西,可以把相似特征的事务抽象成一个类.(事务可以是具 ...
- guido正式发布python年份_Python 基础学习笔记.docx
Python 基础学习笔记 基于<Python语言程序设计基础(第2版)> 第一部分 初识Python语言 第1章 程序设计基本方法 1.1 计算机的概念 计算机是根据指令操作数据的设备, ...
- Java-GUI编程实战之管理系统 Day2【Swing(组件介绍、布局管理器、事件类及监听器类)、基础组件按钮和输入框的用法】
视频.课件.源码[链接:https://pan.baidu.com/s/13ffqGDzH-DZib6-MFViW3Q 提取码:zjxs] Java-GUI编程实战之管理系统 Day1[项目开发流程. ...
- abstract类_012 JAVA 抽象类、接口、String类的基础了解
1.抽象方法和抽象类 抽象方法:使用abstract修饰的方法,没有方法体,只有声明.抽象方法可以当做是一种规范,让子类必须实现. 注意: 1.抽象方法没有方法体,只能以分号结尾 2.抽象方法只能声明 ...
- 同步类的基础AbstractQueuedSynchronizer(AQS)
同步类的基础AbstractQueuedSynchronizer(AQS) 我们之前介绍了很多同步类,比如ReentrantLock,Semaphore, CountDownLatch, Reentr ...
最新文章
- linux基础(8)-颜色显示
- MySQL中的整数类型
- 十大经典排序算法之选择排序及其优化
- JAVAWEB(笔记)
- OGG ORA-1403 NO DATA FOUND
- kippo mysql_Kippo:一款优秀的SSH蜜罐开源软件.pdf
- 简单的通用TreeView(WPF)
- 安装win7的小插曲
- 同义词替换-批量自动同义词替换软件
- 从社区报告看未来20年美国AI研究战略
- 自制瀑布流型爬虫(思路适用很多网站)
- 抖音 触摸精灵_触控精灵app下载-触控精灵手机版 v1.3.2 - 安下载
- 下载安装electron和electron-builder遇到的问题及部分解决办法
- 筑梦数字时代,城链科技战略峰会西安站顺利落幕
- Win10-更改c盘下的用户文件夹名[转]
- Prometheus 监控进程的内存使用率 PromQL 多对一向量匹配
- Apache ECharts数据可视化(连接数据库)
- mq服务器与客户端消息同步,RocketMQ:主从同步的实现
- Linux之系统安装读书笔记
- C#开发BIMFACE系列1 BIMFACE 简介
热门文章
- 操作系统的进程和线程的相关知识的理解
- excel显著性检验_数据分析系列 10/32 | Excel方差分析之单因素方差分析
- insert into 插入空值_常州插入式涡轮流量计旋进旋涡流量计价格-玮偌自控系统...
- tensorflow入门笔记(一)
- php表格无限扩展,php 无限级缓存的类的扩展
- 图论最短路及生成树(Prim,Djikstra,Spfa,Bellan-ford,kruskal,topsort)
- SQL SERVER 备份数据库到指定路径语句
- instanceof、isinstance、isAssignableFrom的区别
- Redis 连接问题
- 五种基于RGB色彩空间统计的皮肤检测算法