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 ...
随机推荐
- Spring Data JPA 实例查询
一.相关接口方法 在继承JpaRepository接口后,自动拥有了按"实例"进行查询的诸多方法.这些方法主要在两个接口中定义,一是QueryByExampleExecut ...
- 【2017-03-20】HTML基础知识、文字标记、图片标记、空格换行、表格、表格嵌套及布局、超链接
一.HTML基础知识 HTML: 网站(站点) - 网页 网站是由一个或者多个网页组合起来的 HTML作为文件后缀名,可以把文件变为网页 HTML是一门编程语言的名字:超文本标记语言 超越了文字的范畴 ...
- 源码分析——从AIDL的使用开始理解Binder进程间通信的流程
源码分析——从AIDL的使用开始理解Binder进程间通信的流程 Binder通信是Android系统架构的基础.本文尝试从AIDL的使用开始理解系统的Binder通信. 0x00 一个AIDL的例子 ...
- jquery-scrollstop
$(window) .on("scrollstart", function() { // Paint the world yellow when scrolling starts. ...
- PRINCE2考试一共多少道题
一.Foundation 基础级: 考试时长 1 个小时: 75 道单选题,其中 5 道随机测试题,无论对错都不计入考分:满分 70 分,获得 35 分才能通过考试,正确率 50%: 全程闭卷考试 二 ...
- 分布式文件管理系统_FastDFS集群
简单介绍 1,client storage tracker的关系 先用一幅图来解释用户如何访问一个通过DFS管理的文件 一般来说,一台服务器只有一个storage server,多个storage s ...
- Unix环境编程基础下
Unix出错处理 当UNIX系统的函数出错时,通常会返回一个负值.我们判断函数的返回值小于0表示出错了,注意我们并不知道为什么出错.例如我们open一个文件,返回值-1表示打开失败,但是为什么打开失败 ...
- windows下搭建tensorflow的环境
这年头,不会点人工智能和神经网络,都不好意思跟人打招呼了.之前搞了一下sklearn,今天觉得应该要了解一下google这个传说中的人工智能开源神器. 最近终于有时间了,凡事从hello world开 ...
- 01.PHP5.x编译详解
##PHP5.5编译安装 ``` wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo yum i ...
- SPOJ - VISIBLEBOX [multiset的使用]
tags:[STL][sort][贪心]题解:做法:先对数组a进行排序,再将数组a从头到尾扫一遍,使用multiset维护最小值,如果,即将放入集合的数字>=最小值的两倍,那我们就删除掉多重集合 ...