Python07

1、闭包
闭包是函数里面嵌套函数,外层函数返回里层函数,这种情况称之为闭包,内函数调用外部函数的变量,外函数返回内函数的调用

def dome1():
    a = 100
    def dome2():
        return a + a
    return dome2
a = dome1()               # a存的是dome2的函数体,<function dome1.<locals>.dome2 at 0x000001EC7E472940>
print(a())                    # 相当于调用函数dome2

2、递归
在函数内部调用自身本身,这个就是递归函数,递归函数要有出口,没有出口会出现内存溢出

def funs(n):
    if n==1:
        return 1
    return n+funs(n-1)
print(funs(4))

3、类
类:用来描述具有相同的属性和方法的对象的集合,包含类名、属性和方法(类属性、类方法不是必须的,需不需要取决于程序设计),类名一般用单驼峰(Myperson)或双驼峰(MyPerson)表示

# 类的定义 
class Myperson:            # 类名
    name='sunwukong'       # 属性
    age='500'              # 属性
    def fly(self):         # 方法
        print('我能飞超级远')
# 类的实例化(类的使用)
sunwukong=Myperson()

4、构造方法
通过init()方法来实现,如果类里面没有写init方法,Python会自动创建,不需要做任何操作,如果要实现添加自己的一些属性,就需要自己定义,一个类里面无论是自己写还是系统自动创建,一定要有init这个方法

class Person:
    def __init__(self,name):
        print(f'{name}构造方法')
p1=Person('我是第一个')
p2=Person('我是第二个')
#
我是第一个构造方法
我是第二个构造方法

5、析构方法
通过del方法实现的,是一种特殊的方法,用在对象被销毁时执行一些清理操作,如资源释放等,当对象被销毁时,无论是程序结束还是对象被手动删除,Python解释器都会自动调这个方法。

凡是以--开头--结尾的方法统称为魔法方法

6、定义一个长方形类,绑定长和宽这两个属性,创造一个计算面积的方法。

class Rectangle:
    def __init__(self, length, width):
        self.length = length
        self.width = width
    def area(self):
        return self.length * self.width
reactangle_area = Rectangle(3,4)
print(f'长方形的面积是:{reactangle_area.area()}')
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容