Python基础学习大纲(20天速成)-第三篇

一、前言

今天和大家分享一套python基础的学习路线,从入门到掌握。学完能用python解决90%逻辑上的问题。在这之前大家可以购买《python从入门到实践》第二版(这里并不是打广告昂,也没人给我广告费,是真的觉得这本书还可以)。可以结合这本书,然后收藏我下面列出的学习计划,一定可以学有所成滴。

二、计划

接上一篇计划继续分享

在这里我们需要深刻理解面向对象设计思想,因为python是一门解释型语言,和java类似。拥有面向对象的几大特性:封装、继承、多态、抽象。在python的世界里,万物皆对象,所以一定要透彻理解面向对象编程的核心思想,以及面向对象和面向过程的区别、应用场景。

Day11:

1.掌握自定义模块的导入(import,from xxx import xxx)

2.掌握calendar模块(该模块专门有万年历,第九天万年历没写出来的可以ctrl点进去看看源码)

3.掌握string模块

4.掌握datatime模块

5.掌握time模块

6.掌握os模块

7.掌握collections模块

注意:2~7都是python IDE自带的模块,也叫做内置模块。不是pip install xxx的第三方模块

练习题:

1、自定义一个模块,其中封装不同的函数,包括冒泡排序,选择排序,二分法查找,在测试文件中导入模块调用函数。

2、封装一个函数,获取指定路径下所有的视频文件,如:mp4,mov,avi,flv,wmv,rmvb。

3、封装一个函数,在当前工程下创建一个文件夹,在该文件夹下生成20个jpg文件,文件名为字母和数字的随机数,生成之后再将20个文件的后缀更改为png。

Day12:

1.掌握类的定义

2.掌握类中的成员的定义和访问(特征、行为)

3.掌握实例属性的动态绑定

4.掌握实例属性和类属性

5.掌握析构函数的使用

6.深刻理解类、类对象、类实例对象

练习题

1、分别定义Circle(圆)类和点(Point)类,计算该圆的周长和面积,并判断某点与该圆的关系。

2、创建一个People类,属性有姓名name,年龄age,性别gender,拥有的方法为砍柴,娶媳妇,回家;实例化对象,执行相应的方法。

Day13:

1.掌握属性私有化

2.掌握继承的原理

3.掌握单继承的使用方法

4.掌握继承中的__slots__的使用

5.掌握继承者类属性的变换

6.掌握多继承的使用方法

练习题:

"""
家具类(HouseItem) 有 名字 和 占地面积属性,其中
- 席梦思(bed) 占地 4 平米
- 衣柜(chest) 占地 2 平米
- 餐桌(table) 占地 1.5 平米
房子类(House) 有 户型、总面积 、剩余面积 和 家具名称列表 属性
- 新房子没有任何的家具
- 将 家具的名称 追加到 家具名称列表 中
- 判断 家具的面积 是否 超过剩余面积,如果超过,提示不能添加这件家具
a.将以上三件 家具对象 添加 到 房子对象 中
b.打印房子时,要求输出:户型、总面积、剩余面积、家具名称列表
使用面向对象思想,编码完成上述功能。
"""
"""
学生类Student:
属性:学号,姓名,年龄,性别,成绩
班级类 Grade:
            属性:班级名称,班级中的学生 【使用列表存储学生】
            方法:
                1.查看该班级中的所有学生的信息
                2.查看指定学号的学生信息
                3.查看班级中成绩不及格的学生信息
                4.将班级中的学生按照成绩降序排序
"""

Day14:

注意:在学完继承的前提下去理解

1.掌握函数的重写

2.掌握运算符的重载

3.掌握多态的使用

4.掌握对象常用的内置函数

5.掌握对象常用的内置属性

6.掌握静态函数和类函数

7.掌握单例设计模式(单例类)

练习题:

1、写一个计算器工具类Calculator,可以进行加、减、乘、除计算(程序员必经之路,手撕计算器)

'''
需求:
1).士兵瑞恩有一把AK47
2).士兵可以开火(士兵开火扣动的是扳机)
3).枪 能够 发射子弹(把子弹发射出去)
4).枪 能够 装填子弹 --增加子弹的数量
**从上面的语境中提取对象的属性,方法 ,进而声明类完成需求对应的操作**
'''
'''
两个类:
    一.枪
        1.两个属性--->型号、子弹数量,给默认的
        2.两个行为--->发弹、装弹
    二.士兵
        1.一个属性--->姓名、枪的型号
        2.一个行为--->开火
'''

温馨提示:学到这里其实是有一定难度的,一是对需求的理解能力,二十对面向对象思想的检验。如果你不会写也没有关系,但至少逻辑要通。哪些是类、哪些是属性、哪些是方法、哪些是对象,能够口头表达代码逻辑也可以。

Day15:

1、掌握抽象类(abc模块)

2、掌握文件的读取

3、掌握文件的写入

4、掌握文件内容的拷贝

5、掌握with上下文(__enter__,__exit__,着重理解)

6、掌握常用二进制文件的读取和写入

7、掌握csv文件的读取和写入

8、掌握pickle、csv模块的使用

练习题:

1、对一个文件进行读写操作,并灵活运用。


第三篇的分享到这儿就结束了,这一周是我认为学习过程中最难的一周,掌握不完全的朋友不要气馁,面向对象的思想需要一个消化的过程、循循渐进去感受这种把周围场景和业务用易语言(口头代码)描述出来,相信你们可以感觉到的,还有最后一周,坚持就是胜利,我们下一篇见。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戒酒的李白-Lisage

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值