一、函数的补充

1.函数的递归

函数的高级用法就是函数调用函数本身,从而实现函数的递归功能

def   函数名(参数):
           代码块

           函数名

2.匿名函数lambda

功能:当我们定义一些简单函数,功能比较简单,可以用匿名函数

格式:函数名 = lambda 参数:函数内代码

1.匿名函数也能作为函数的参数,比如sorted()函数

格式:sorted(iterable,key=None,reverse=False)

参数iterable:表示可迭代的数据对象,如字符串,列表或元组

参数key:表示比较函数,值可以为lambda语句

参数reverse:表示排序顺序,若值为False表示从小到大排序,值为True表示从大到小排序

abs()函数表示求内部的绝对值

二、类

1.创建类

格式:class  类的名称():

                      def    __init__(self,参数1,参数2,...)

                                代码块1

                      def   方法名(参数1,参数2,...)

                                代码块2

                                ...

注意:1.类的命名与变量命名规则一样,为了与函数名区分,类名称的首字母需要大写。

           2.self是类中的共享空间,self在__init__的时候,准备好后期需要的数据

2.创建对象

格式:对象=类名(实参)

注意:类名中的实参会传递给类中的__init__()初始化方法

创建类的对象后,就可以通过对象名使用类中的方法:对象.方法名(参数)

3.类的属性的使用

        在使用属性之前先创建一个具体的对象通过:对象.属性 的形式使用不需要加上括号

注意:有些属性不在初始化方法内无法直接的调用,需要调用属性存在的方法,才能获取属性

4.初始化其他方法

        在类的定义中,__init__()初始化方法也可以调用类中定义的其他方法,调用过后可以获取方法内对应的属性

5.属性的修改

属性的值可以通过对象来进行修改,用新值覆盖旧值

6.获取类的文档说明

获取类的文档说明通过__doc__属性实现

三、类的继承

1.类的继承方式

在创建新类时,class后面的括号用于继承父类且不接收参数。

格式:class  子类名(父类名):

                def  __init__(self,子参数):

                        super.__init__(父参数)

                        代码块

                def   方法1()...

注意:1.新类中子类名后面的括号中写入父类名,表明新类是继承哪个类的,父类的代码要写在子类的前面

          2.在子类的初始化方法中,加入super().__init__(父参数),表明将父类的属性与方法与子类关联起来

          3.子类可以使用子类和父类的所有属性和方法,父类不能使用子类的属性和方法

2.在子类中添加方法

        子类中还可以添加新的方法,但在子类中新创建的方法无法在父类中使用,父类创建的方法可以在子类中使用

3.覆盖父类中的方法

        当需要对父类中的方法进行修改,调整时,可以通过子类重新编写父类的方法。在执行子类的方法时会自动覆盖父类中相应的方法

四、导入文件中其他的类

1.导入文件

使用import导入c.py文件,后面想要使用c.py文件中的类通过 c.类名(参数)的形式导入

2.导入文件中的指定类

当文件有多个类而防止类太多导致名称冲突,可以导入指定类

3.导入文件中的全部类

4.给导入的类设置别名

5.类的文件模块化

        openpyxl文件夹中存在一个__init__.py文件,当python在该文件夹下检测到__init__.py文件时,会默认将整个openpyxl文件夹下的所有文件都当作一个模块,即一个整体。用户可以使用import  openpyxl导入整个库

五、操作文件

1.文件的介绍

        一个文件由三个部分组成,分别是文件保存的路径,文件类型,文件内容

2.打开文件

在python中打开文件使用open()函数打开一个文件。

格式:open(file,mode=‘r’,buffering=-1,encoding=None,errors=None,newline=None,closefd=True,opener=None)

注意:不能在使用代码操作文件时,还使用操作系统操作文件,会造成冲突

参数file:需要打开的文件路径,数据类型为字符串

参数mode:指明文件的打开模式,r表示只读,只允许对文件进行读取操作;w覆盖写模式,文件有内容会先清除文件中的内容再写入,如果没有该文件则新建一个文件;a追加写模式,再文件原有的内容上继续写入,如果没有该文件则新建一个文件

参数encoding:表示需要打开文件的编码方式,在文本模式有效。通常为‘cp936’编码方式,是GBK编码方式的一种

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐