python基础 day22 面向对象初识
递归练习
# 遍历文件夹下的所有文件 -- 掌握
# 斐波那契数列练习 -- 会写
# 三级菜单 -- 看懂并知道实现方法
# 查看文件夹的总大小 -- 看懂并知道实现方法
sys
# sys.path
# sys.argv 在执行python脚本的时候 写在python 之后的所有的内容,形成了一个列表
# sys.modules 查看已经加载到内存中的所有模块
os
# 和文件 文件夹相关的
# 和工作目录相关的
# 和执行操作系统命令相关的
# .path系列
logging
# 排错 数据分析 操作审计
# 普通的输出(文件/屏幕)
# 切分日志(时间/文件大小)
shutil
# 和文件相关的内容
算法
二分查找 [1,2,3,4,5,6,7,8,9,10,27,36,46,58,69] - 有序列表
in index 从列表中找到一个值的位置
实现上面的功能 - 用代码
sys.argv练习
写一个python脚本,在cmd里执行
python xxx.py 用户名 密码 cp 文件路径 目的地址
python xxx.py alex sb cp D:\python_22\day22\1.内容回顾.py D:\python_22\day21
python xxx.py alex sb rm D:\python_22\day22
python xxx.py alex sb rename D:\python_22\day22 D:\python_22\day23
使用walk来计算文件夹的总大小
import os
g = os.walk('D:\python_22')
for i in g :
path,dir_lst,name_lst = i
print(path,name_lst)
二、今日内容
-
什么是面向对象
-
先来定义模子,用来描述一类事物
-
具有相同的属性和动作
class Person:
def __init__(self,name,age,job,score):
self.name = name
self.age = age
self.job = job
self.score = score
obj = Person('alex','23','法师','98') #实例化一个对象
print(obj.__dict__)
obj.name = '太白金星' #属性值修改
print(obj.__dict__)
obj.heigh = '180cm' #属性值的增加
print(obj.__dict__)
del obj.name #属性值的删除
print(obj.__dict__)
-
-
class Circle:
def __init__(self,r):
self.r = r
def count_area(self):
return 3.14*self.r**2
def count_line(self):
return 2*3.14*self.r
circle_1 = Circle(5)
print(circle_1.__dict__)
print(f'圆形的面积为:{circle_1.count_area()}')
print(f'圆形的周长为:{circle_1.count_line()}')
circle_2 = Circle(10)
print(circle_2.__dict__)
print(f'圆形的面积为:{circle_2.count_area()}')
print(f'圆形的周长为:{circle_2.count_line()}')
#类之间的调用
class Person:
def __init__(self,name,age,job,ad,hp):
self.name = name
self.age = age
self.job = job
self.ad = ad
self.hp = hp
def test(self,dog):
dog.hp -= self.ad
print(f'{self.name}撸了{dog.name}一下,{dog.name}掉了{self.ad}血')
# obj = Person('alex','23','法师','98') #实例化一个对象
# print(obj.__dict__)
# obj.name = '太白金星' #属性值修改
# print(obj.__dict__)
# obj.heigh = '180cm' #属性值的增加
# print(obj.__dict__)
# del obj.name #属性值的删除
# print(obj.__dict__)
class Dog:
def __init__(self,name,age,ad,job,hp):
self.name = name
self.age = age
self.ad = ad
self.job = job
self.hp = hp
def func(self,person):
hp = person.hp -self.ad
if hp<0:
print(f'{self.name}咬了{person.name}一口,{person.name}掉了{self.ad}血,{person.name}扛不住死了')
else:
print(f'{self.name}咬了{person.name}一口,{person.name}掉了{self.ad}血')
obj = Person('alex',12,'法师',2,20) #实例化一个对象
dog = Dog('小白',12,22,'洗澡工',200)
obj.test(dog)
dog.func(obj) -
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步