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

用户登录:

相关推荐
之歆6 分钟前
Python-数据库概念-pymysql-元编程-SQLAlchemy-学习笔记
数据库·python·学习
大模型真好玩28 分钟前
深入浅出LangChain AI Agent智能体开发教程(三)—LangChain核心概念“链”
人工智能·python·mcp
钢铁男儿35 分钟前
Python并发编程:突破GIL枷锁,高效利用多核CPU
开发语言·python
@十八子德月生44 分钟前
第二阶段-第二章—8天Python从入门到精通【itheima】-133节(SQL——DQL——基础查询)
android·开发语言·数据库·python·sql·学习·程序人生
阿杰技术2 小时前
Dockerfile配置基于 Python 的 Web 应用镜像
java·前端·python
程序员的世界你不懂2 小时前
Django接口自动化平台实现(四)
python·django·自动化
这里有鱼汤2 小时前
我用Python复刻了一段历史牛股K线,居然找到7只走势神似的票!
后端·python
pk_xz1234562 小时前
干涉仪测量中干涉条纹的自动调节系统设计与实现
人工智能·python·机器学习·机器人
DAWN_T172 小时前
神经网络——非线性激活
人工智能·python·深度学习·神经网络·机器学习
Kaydeon8 小时前
【Anaconda】Conda 虚拟环境打包迁移教程
人工智能·pytorch·python·conda