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基础简明笔记相关推荐

  1. python中扑克牌类设计_Python类的基础设计、使用

    类是事物功能和属性的抽象,对象是类的实例化.就像人人都知道小汽车可以干什么什么的,但光想小汽车如何好是没有用的,得开车或坐才能感受到小汽车的好.人脑里的小汽车是抽象的,即类,而坐上的某辆车是小汽车的实 ...

  2. JDBCUtils工具类的基础学习笔记

    注:以下整理笔记来自自己的公众号,适合初学者一起探讨,我也是初学者! 创建一个实体类: package com.zx.bean;public class User {private int id;pr ...

  3. python新手入门英文词汇_Python新手入门基础英文笔记

    1.字符串的操作 user:用户 name:名称/姓名 attibute:字段/属性 Value:值 2.重复/转换/替换/原始字符号 upper:上面 lower:下面 capitalize:用大写 ...

  4. python类的析构方法是什么_python类的析构方法是什么_python类析构

    python __del__ 转自:http://blog.csdn.net/bbdxf/article/details/25774763 最近学习<Python参考手册>学到Class部 ...

  5. class括号里的object_Python入门 类class 基础篇

    记住一句话:类是模板,而实例则是根据类创建的对象. 我初学时对类的理解是从类的字面上,可以片面的认为它是一个种类,它是相似特征的抽像,也就是相似的东西,可以把相似特征的事务抽象成一个类.(事务可以是具 ...

  6. guido正式发布python年份_Python 基础学习笔记.docx

    Python 基础学习笔记 基于<Python语言程序设计基础(第2版)> 第一部分 初识Python语言 第1章 程序设计基本方法 1.1 计算机的概念 计算机是根据指令操作数据的设备, ...

  7. Java-GUI编程实战之管理系统 Day2【Swing(组件介绍、布局管理器、事件类及监听器类)、基础组件按钮和输入框的用法】

    视频.课件.源码[链接:https://pan.baidu.com/s/13ffqGDzH-DZib6-MFViW3Q 提取码:zjxs] Java-GUI编程实战之管理系统 Day1[项目开发流程. ...

  8. abstract类_012 JAVA 抽象类、接口、String类的基础了解

    1.抽象方法和抽象类 抽象方法:使用abstract修饰的方法,没有方法体,只有声明.抽象方法可以当做是一种规范,让子类必须实现. 注意: 1.抽象方法没有方法体,只能以分号结尾 2.抽象方法只能声明 ...

  9. 同步类的基础AbstractQueuedSynchronizer(AQS)

    同步类的基础AbstractQueuedSynchronizer(AQS) 我们之前介绍了很多同步类,比如ReentrantLock,Semaphore, CountDownLatch, Reentr ...

最新文章

  1. linux基础(8)-颜色显示
  2. MySQL中的整数类型
  3. 十大经典排序算法之选择排序及其优化
  4. JAVAWEB(笔记)
  5. OGG ORA-1403 NO DATA FOUND
  6. kippo mysql_Kippo:一款优秀的SSH蜜罐开源软件.pdf
  7. 简单的通用TreeView(WPF)
  8. 安装win7的小插曲
  9. 同义词替换-批量自动同义词替换软件
  10. 从社区报告看未来20年美国AI研究战略
  11. 自制瀑布流型爬虫(思路适用很多网站)
  12. 抖音 触摸精灵_触控精灵app下载-触控精灵手机版 v1.3.2 - 安下载
  13. 下载安装electron和electron-builder遇到的问题及部分解决办法
  14. 筑梦数字时代,城链科技战略峰会西安站顺利落幕
  15. Win10-更改c盘下的用户文件夹名[转]
  16. Prometheus 监控进程的内存使用率 PromQL 多对一向量匹配
  17. Apache ECharts数据可视化(连接数据库)
  18. mq服务器与客户端消息同步,RocketMQ:主从同步的实现
  19. Linux之系统安装读书笔记
  20. C#开发BIMFACE系列1 BIMFACE 简介

热门文章

  1. 操作系统的进程和线程的相关知识的理解
  2. excel显著性检验_数据分析系列 10/32 | Excel方差分析之单因素方差分析
  3. insert into 插入空值_常州插入式涡轮流量计旋进旋涡流量计价格-玮偌自控系统...
  4. tensorflow入门笔记(一)
  5. php表格无限扩展,php 无限级缓存的类的扩展
  6. 图论最短路及生成树(Prim,Djikstra,Spfa,Bellan-ford,kruskal,topsort)
  7. SQL SERVER 备份数据库到指定路径语句
  8. instanceof、isinstance、isAssignableFrom的区别
  9. Redis 连接问题
  10. 五种基于RGB色彩空间统计的皮肤检测算法