python DAY_6(2)模块,包初识面向对象

学习内容:
1.包,模块。
2.初识面向对象
要点回顾:
在这里插入图片描述

以上是参考代码,自己写的代码如下:
def cacluate(l):
b = l.split(" ")
sum = 0.0
num = 0
for x in b:
sum = sum + int(x)
avg = sum / len(b)
for y in b:
if avg <= int(y):
num = num + 1
print(sum / len(b), num)
l = input(“请输入任意个数数字,以空格为间隔\n”)
cacluate(l)

重点
1.模块,包
1)包的创建,我们在文件夹点击右键新建一个,python packa 就是包,名字随意起,这时候包里面会自带一个.py的小文件,名字为——init——.py,这个是个初始化文件,每一个包都有,具体功能在后续会接触。
2).创建好包之后,在包内就可以创建python file 这个就是模块,我们在模块种可以定义函数,定义算法,定义变量等诸多操作。
3).引用,在主函数中调用时候,模块如果在同一包中,那么直接
impor 模块
模块.功能
即可,
如果在其他包中,那么
import 包.模块
模块.功能
即可
4).如果我们在编程的时候,发现模块的内容也需要更改,但是更改后调用包发现没有新加入的功能。
那么就可以使用impor importlib.reload(模块名)
在调用就有了,这个指令只针对模块。

学习重点:
2.面向对象的程序设计
1)核心思想
面向对象的核心是以人的思想去分析问题,解决问题。首先就要在分析问题的时候抛开代码的约束,从问题的各个方面出发,逐一分析,逐一解决,最后代码也会水到渠成,自然而然就能写出。
2.主要内容
1)面向对象的分析(ooa)
2)面向对象的设计(ood)
3)面向对象的编程(oop)
3.主要过程
1)分析对象的特征
2)写 类(class)描述对象模板
3)实例化,模拟过程。
4.实例
我们以健身运动为例:
分析健身运动很宽泛,我们要将它付诸于人的身上,才有意义。
那么我们健身需要先了解基本的身体状况,如(身高体重,血压心率,年龄)等,其次有了基本情况,我们健身会有一定的(目的),增肌,减脂等,其后会有推荐的(运动动作),这就成了一个较为完整的体系。
本次初识面向对象,我们抛
开具体条件和做法。class fitness: # 创建了健身这个类
def ——init——(self,
name=" “,
sex=” “,
aim=“减脂”,
weight=” “,
heart_rate=” “,
blood_pressure=” ",
recommend_sport=None):
# 初始化,我们需要将基本消息和条件写入,即使没有测得数字,我们可是默认附上内容,在后续我们录入数值时,可以自动替换掉
self.name = name
self.sex = sex
self.aim = aim
self.weight = weight
self.heart_rate = heart_rate
self.blood_pressure = blood_pressure
self.recommend_sport = recommend_sport

def print_out(self):  # 定义输出函数
    print(" 名字:{}".format(self.name))
    print(" 性别:{}".format(self.sex))
    print("体重:{}".format(self.weight))
    print(" 心率:{}".format(self.heart_rate))
    print("血压: {}".format(self.blood_pressure))
    print(" 推荐动作:{}".format(self.recommend_sport))  # 完成了输出

man1 = fitness(“zzh”, “men”, “增肌”, “55kg”, “85”, “120-70”, “squat”)
man1.print_out()(此时man1就相当于class里面的一条内容,其包括了class fitness内可实现的功能)
在这里插入图片描述

此时如果少些了一些,例如组后一项

man1 = fitness(“zzh”,“man”, “增肌”,“55”, “85”, “120-70”)
在这里插入图片描述
那么我们在最初赋值的时候,在recommend_sport上附上的NONE就会替代输出

发布了33 篇原创文章 · 获赞 0 · 访问量 705

猜你喜欢

转载自blog.csdn.net/soulproficiency/article/details/103905572