python之基础中的基础(三)
1、类,类就像是负责特定项目的主管,交给主管干这件事情,主管可以让手下的人分别去完成自己该干的活,最后综合起来把结果交给主管传递出去,即完成任务。
- class Dog():
- """模拟小狗的测试 """
- def __init__(self,name,age):
- """初始化要用的所有变量 """
- self.name=name
- self.age=age
- def sit(self):
- """让小狗坐下 """
- print("your dog is sitting")
- def roll_over(self):
- """让小狗打滚 """
- print("your dog is rolling")
1、注意类的名称的首个字母最好大写(以规整日后书写习惯)。(当然不大写程序也不会报错)
2、类中一定要有一个初始化方法,并且init前后分别两道下划线,初学者很容只写一道下划线,这样程序会报错找不到类找不到参数。初始化方法中必须有一个形参self,后面还可以跟若干个用户需要的形参,调用时不用输入self的实参,但其余的实参必须输入。这里self可以理解为项目主体,接下来本次在类中不同的方法中都是围绕这个项目而做事,因此都要调用这个形参self,并且将类中不同方法中的工作成果传递。
3、通过类创建实例,my_dog=Dog("honey",3)
4、访问实例的属性,print("your dog's name is "+my_dog.name.title())
5、调用实例的方法,my_dog.sit()
6、修改属性的值,①my_new_car.odometer_reading=1,②通过添加一个方法来在类中改变参数的值(先调用新方法改变属性值,在调用老方法在实现功能)
7、继承,子类继承夫类时,子类将获得父类的所有属性和方法,同时还可以定义新的属性和方法,代码如下:
- class Car():
- def __init__(self,make,model,year):
- self.make=make
- self.model=model
- self.year=year
- self.odometer=0
- def get_descriptive(self):
- long_name=str(self.make)+' '+str(self.model)+' '+str(self.year)
- return long_name.title()
- def read_odometer(self):
- print("your car has "+str(self.odometer)+"miles on it")
- class ElectricCar(Car):
- def __init__(self,make,model,year):
- super().__init__(make,model,year):
- my_tesla=ElectricCar('tesla','model s',2016)
以上为类继承方式,即使是继承,初始化方法也不可少,更重要的是super()函数,此函数将子类和父类关联起来。同时我们也可以在子类的初始化方法中添加属性变量
若要父类中的某个方法在子类中需要稍加修改,则直接定一个同名称的方法即可。
8、导入类可前面的导入函数的方法一样。
9、就像其他语言一样,python 也自带了一些模块,储存在标准库中。
python之基础中的基础(三)的更多相关文章
- [.net 面向对象编程基础] (3) 基础中的基础——数据类型
[.net 面向对象编程基础] (3) 基础中的基础——数据类型 关于数据类型,这是基础中的基础. 基础..基础..基础.基本功必须要扎实. 首先,从使用电脑开始,再到编程,电脑要存储数据,就要按类型 ...
- [.net 面向对象编程基础] (7) 基础中的基础——流程控制语句
[.net 面向对象编程基础] (7) 基础中的基础——流程控制语句 本来没有这一节的内容,后来考虑到既然是一个系列文章,那么就尽可能写的详细一些,本节参考了网上朋友所写的例子,为的是让更多小伙伴学习 ...
- [.net 面向对象编程基础] (4) 基础中的基础——数据类型转换
[.net面向对象编程基础] (4)基础中的基础——数据类型转换 1.为什么要进行数据转换? 首先,为什么要进行数据转换,拿值类型例子说明一下, 比如:我们要把23角零钱,换成2.30元,就需要把整形 ...
- [.net 面向对象编程基础] (5) 基础中的基础——变量和常量
[.net面向对象编程基础] (5) 基础中的基础——变量和常量 1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须 ...
- [.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式
[.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式 说起C#运算符和表达式,小伙伴们肯定以为很简单,其实要用好表达式,不是一件容易的事.一个好的表达式可以让你做事半功倍的效果,比如 ...
- [.net 面向对象编程基础] (8) 基础中的基础——修饰符
[.net 面向对象编程基础] (8) 基础中的基础——修饰符 在进入C#面向对象核心之前,我们需要先对修饰符有所了解,其实我们在前面说到变量和常量的时候,已经使用了修饰符,并且说明了变量和常量的修改 ...
- 从头开始学JavaScript 笔记(一)——基础中的基础
原文:从头开始学JavaScript 笔记(一)--基础中的基础 概要:javascript的组成. 各个组成部分的作用 . 一.javascript的组成 javascript ECMASc ...
- C++ 基础中的基础 ---- 引用
C++ 基础中的基础 ---- 引用 引用的概念:引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字.一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量.比如: int n ...
- python之基础中的基础(一)
python是一个效率极高的语言,现在市面上的机器学习大部分是由python和R语言完成,所以在不久之前小仙心中便种下了学习python的想法.下面是这一个月多月以来学习的总结,都是基础中基础了. 1 ...
随机推荐
- fastjson过滤不需要的属性
以下是一个通用的对象转json的方法,使用的fastjson的SimplePropertyPreFilter 对象,个人感觉比使用PropertyPreFilter的匿名内部类形式的过滤器更好用!直接 ...
- 关于mui选择器的使用
使用mui引入选择器的picker.js.poppicker.js.及他们的css文件之后引入代码与点击确定之后的状态: document.querySelector('#osex').addEven ...
- iOS回顾笔记(08) -- 自定义Cell的类型和创建步骤总结
iOS回顾笔记(08) -- 自定义Cell的类型和创建步骤总结 项目中我们常见的自定义cell主要分为两种 等高cell:如应用列表.功能列表 非等高cell:如微博列表.QQ聊天页面 下面对这 ...
- select count(*)优化 快速得到总记录数
1.select count(*) from table_name 比select count(主键列) from table_name和select count(1) from table_name ...
- C#随机取得可用端口号
TCP与UDP段结构中端口地址都是16比特,可以有在0---65535范围内的端口号.对于这65536个端口号有以下的使用规定: (1)端口号小于256的定义为常用端口,服务器一般都是通过常用端口号来 ...
- Struts2之Action与配置文件
一.Struts2配置文件 1.struts.properties 在学习Action之前先学下Struts2的配置文件,与Struts2相关的配置文件有好几个,常用的有Struts.xml,web. ...
- (转)Zabbix Agent-Windows平台配置指导
原地址:http://blog.itpub.net/26739940/viewspace-1169538/ zabbix是一个CS结构的监控系统,支持ping,snmp等很多的监控,但是大部分 ...
- 实验楼-2-Linux基础快捷键
终端:本质上对应着Linux上的/dev/tty设备 shell:打开终端,shell则自动打开 可以在终端直接输入: echo "hello world" /*shell程序自动 ...
- mybatis generator 插件安装及使用
现在Mybatis特别火,但是在开发中却要经常写实体类和配置文件,会不会特别烦人,所以可以利用Mybatis的代码生成插件来生成这部分代码: 1,打开eclipse,点击Help>Softwar ...
- js数组的几个练习题
第一次在博客园写文章,之前一直自己做记录.现在前端工作两年了,对前端整体技术有较清晰的了解.项目用了vue,react之类的写,如今打算从基础开始,慢慢深入了解原生的JS.这几天清明节,玩的嗨皮,最后 ...