python 基础部分(六)

一、回顾

1、面向对象
①写明白类
类是一个对某一事物的描述,对属性和方法的封装

class 类名:
        def __init__(self , x,y,z,):
            #实例变量
            var = 123 #类变量
            self.x == x
            self.y == y
            self.z == z
        #实例方法,给对象用的
        def method(self):
            pass
            
        #类名.method(obj)调用类里面的方法
        @staticmethod
        def stamethod():#静态方法 >函数
            pass
        @classmethod >方法
        def clsmethod(cls):
            pass

②明白对象是什么
什么都是对象,
在编程的世界里,对象是由类创建,
类名() >创建对象,实例化
此时默认的调用方法 new()开辟内存 init()
对象能够使用的方法都在类中,对象的属性一般都写在__init
()

class Stu:
    def __init__(self,name,age,sex):
        self.name =name
        self.age= age
        self.sex=sex
s= Stu("tonm","18","男")
print(s.sex)

程序输出结果为:

对象最主要的意义就是对数据进行封装。

@property
    def age(self):
        return 10

在类里面,把方法变成属性。
类可以互相继承:

class Base: #父类
    pass
class Person(Base): #子类,可以继承多个父类

#查找顺序:先找自己的,再找第一个,再找第二个
pass
1、依赖:在执行某个方法的时候把另一个类的对象作为参数传递进来。
2、关联关系:在一个对象中绑定另外一个类的对象,解耦。
两个对象之间如果是紧密联系,称为耦合性强。
约束:
1、写一个父类,在父类中写出要被约束的方法,在该方法中写raise NotImplementedError()
2、写一个抽象类,子类重写抽象类中的抽象方法。
反射:

经典类的MRO

类的深度继承顺序
从左到右,一条道走到黑(树形结构,深度遍历)
广度优先遍历:一层一层的。

新式类的MRO C3算法

1、拆分
2、合并

模块

1、random
from random import randint

import random
print(random.randint(10,20))#随机产生一个整数
print(random.random()) #随机产生一个0-1之间的小数
print(random.uniform(10,20))#随机产生10-20的随机小数
lst=["打赏","高正","哈哈"]
random.shuffle(lst)#随机打乱列表顺序,扑克牌
print(lst)
s = random.choice(lst)#从列表中随机输出一个
print(s)
m = random.sample(["打赏","高正","哈哈"],2)#随机从列表中抽取两个
print(m)

程序需输出结果为;

11
0.8474198657822302
11.992369822435501
['打赏', '高正', '哈哈']
打赏
['哈哈', '高正']

2、collections模块

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值