python——第十七天

方法重写(overwrite) 、方法覆盖(override ):在继承的基础上,子类继承了父类的方法,如果不能满足自己使用,我们就可以重写或覆盖该方法

函数重载(overload):

在强数据类型的编程语言中(如Java、C、C++等等):

函数名称相同,函数参数个数不同或者类型不同,从而形成多个同样名称的函数调用时,根据参数的个数或者类型自动完成调用函数的

注意:弱数据编程语言中,默认无法实现函数重载,如果要实现,则需要使用特殊手段

public int add(int x, int y) {

return x + y;

}

public int add(int ) {

return x* x;

}

public float add(float x, int y) {

return x + y;

}

public void add(int x, int y) {

System.out.print1n(x + y) ;

}

public int add(int y, int x) {

return x +y;

}

public float add(int x, float y) {

return x + y;

}

// add(10.56f, 30) ;

add(10, 5.314f) ;

super(),这个全局函数比较特殊,在面向对象中,默认指向父类,是一个指针

多态:

一种事物的多种状态

面向对象中,多态指的是:

在继承的基础上,使用更大的父类来代替子类的现象,被称为多态

简而言之,父类引用指向子类实例

List

ArrayList

ArrayList al=new ArrayList(); //创建子类的方式

List ls = new ArrayList();//多态

像python、JS等弱数据类型语言,天生支持多态

通过大量的面向对象的案例,进行面向对象的练习

异常处理:

软件的容错能力的处理

异常:软件运行过程中的不正常现象,如果不做处理,则会导致软件无法正常执行而挂掉

异常处理:就是将这种异常进行处理,使得代码能继续正常运行(软件的一种容错)

异常处理,就是软件的稳定性的提高和容错能力的提高

注意:异常和致命性错误的区别:

异常是一种错误,但是错误不一定是异常(这里说的是可控性的异常

一般致命性的错误,需要修改代码来解决

而异常时可以通过异常处理的方案来修复

python提供异常处理的方案:

try catch解决方案

try catch:

表示通过尝试着抓捕异常来进行异常解决!!!

try:

#有可能出现异常的代码

#代码

#......

except [xxException |xxxError]:

#异常处理

except [xxException |xxxError]:

#异常处理

except [xxException |xxxError]:

#异常处理

else: 没有异常时执行的代码

finally: #必要时执行的代码

win+R 输入calc打开计算器

finally:

不管存不存在异常,都会执行该代码块

所以一些必须要执行的代码建议放在finally中,以保证肯定执行

如回收资料,销毁缓存等等

注意1:如果函数中,在finally之前存在了return,而且在finally执行前,已经return,则在finally中的修改,不会出现在最终的结果

注意2:但是如果finally存在return,则之前的就会失效

try:

#code...

finally:

#为了使用finally特殊之处

#如果存在必须要执行的重要代码,建议写在finally

正则表达式(regular expresion):

什么是正则表达

正则表达式的诞生

编程语言中为什么使用正则表达式

python对于正则的支持------re

compile 'findall' ,'finditer','match','search','split','sub'

正则表达式的写法:

元字符:

. #匹配任意符号

re.match(".","Ama is good").group

'.*'匹配换行符前的所有字符

\w #匹配有效符号(包括中文)

\d #匹配数字

\s #匹配空白位

^ #以什么开始

$ #以什么结束

re.match("^a,*b$","afdsgbdshfbdhsjb")

acasjdhasj45\] #列举,只能是中括号中的某一个符号充当 re.match("t\[advdch\].\*","ta") \[123456789\] #数字 \[0-9\] #数字 \[a-z\] #小写字母 \[A-Z\] #大写字母 按照ASCII表来的递增 \[A-Za-z\] #大小写字母 \[_0-0a-zA-Z\] #有效符号 反义符: \\D #\\d相反 \\W #\\w相反 \\S #\\s相反 \^\[dasdsadqw\] #以什么开头 \[\^dasdsadqw\] #不能以什么开头 python中匹配路径 需要\\\\\\\\四个斜杠 re.match("c:\\\\\\\\a\\\\\\\\b",p) 或者re.match(r"c:\\\\a\\\\b",p) 重复、位数问题 \* #0\~多位 + #1\~多位 ?(英文的)#0或者1 {n} #n位 {n,} #至少n位 {m,n} #在\[m,n

用户登录:

相关推荐
一晌小贪欢2 小时前
【Python数据分析】数据分析与可视化
开发语言·python·数据分析·数据可视化·数据清洗
dreams_dream4 小时前
Flask
后端·python·flask
mywpython4 小时前
用Python和Websockets库构建一个高性能、低延迟的实时消息推送服务
python·websocket
ZPC82105 小时前
FPGA 部署ONNX
人工智能·python·算法·机器人
一晌小贪欢5 小时前
Python键盘鼠标自动化库详解:从入门到精通
python·自动化·计算机外设·python鼠标·python键盘·python操控鼠标·python操控键盘
穿西装的水獭5 小时前
python将Excel数据写进图片中
开发语言·python·excel
xiaoxiongip6666 小时前
假设两个设备在不同网段,网关怎么设置才能通呢
网络·爬虫·python·https·智能路由器
逻极6 小时前
Scikit-learn 实战:15 分钟构建生产级中国房价预测模型
python·机器学习·scikit-learn
行板Andante6 小时前
AttributeError: ‘super‘ object has no attribute ‘sklearn_tags‘解决
人工智能·python·sklearn
tryCbest6 小时前
Python基础之爬虫技术(一)
开发语言·爬虫·python