python-13 函数 面向对象

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/L1558198727/article/details/83055373

函数

允许递归
函数的定义

分类

内置函数
标准库函数
库函数
用户自定义函数

函数的定义和调用

使用def语句定义函数

def 函数名(参数列表):
	函数体 (语句)

形参之间用逗号做间隔
有没有返回值的函数看函数有没有return语句

练习,n阶调和数
def myAdd(n):
    sum = 0.0;
    for i in range(1,n+1):
        sum += 1.0/i
    return sum

递归实现
def myAdd(n):
    if n==1:
        return 1.0;
    else:
        return 1.0/n+myAdd(n-1)

封装继承多态

类的定义

clas 类名:
	类体

对象的创建和使用

a=类名()
a.属性
a.方法

函数和方法

带self的叫做方法
不带self的叫做函数

def __init__(self,name): #相当于构造函数,调用是忽略self
	self.name = name

封装属性

class Person:
    name = "Tom"
    __age=34

    def get_age():
        print(Person.__age)



p = Person()
#p.get_age() #错误的写法
Person.get_age()
p._Person__age = 2
print(p._Person__age)

两个__表示私有成员

调用私有属性:

对象._类名__属性
对象.一个下划线类名两个下划线属性

装饰器

属性装饰器

class Person:

    def __init__(self,name):
        self.__name = name

    @property
    def info(self):
        return self.__name

p = Person("tom")

print(p.info)

将方法视为属性

猜你喜欢

转载自blog.csdn.net/L1558198727/article/details/83055373