20-作业-面向对象
-
简述面向对象三大特性并用代码表示。
-
什么是鸭子模型?
-
列举面向对象中的类成员和对象成员。
-
@methodclass和@staticmethod的区别?
-
Python中双下滑 __ 有什么作用?
-
看代码写结果
class Base: x = 1 obj = Base() print(obj.x) obj.y = 123 print(obj.y) obj.x = 123 print(obj.x) print(Base.x) -
看代码写结果
class Parent: x = 1 class Child1(Parent): pass class Child2(Parent): pass print(Parent.x,Child1.x,Child2.x) Child2.x = 2 print(Parent.x,Child1.x,Child2.x) Child1.x = 3 print(Parent.x,Child1.x,Child2.x) -
看代码写结果
class Foo(object): n1 = '武沛齐' n2 = '金老板' def __init__(self): self.n1 = '女神' obj = Foo() print(obj.n1) print(obj.n2) -
看代码写结果【如果有错误,则标注错误即可,并且假设程序报错可以继续执行】
class Foo(object): n1 = '武沛齐' def __init__(self,name): self.n2 = name obj = Foo('太白') print(obj.n1) print(obj.n2) print(Foo.n1) print(Foo.n2) -
看代码写结果【如果有错误,则标注错误即可,并且假设程序报错可以继续执行】
class Foo(object): a1 = 1 __a2 = 2 def __init__(self,num): self.num = num self.__salary = 1000 def show_data(self): print(self.num+self.a1) obj = Foo(666) print(obj.num) print(obj.a1) print(obj.__salary) print(obj.__a2) print(Foo.a1) print(Foo.__a2)
-
看代码写结果【如果有错误,则标注错误即可,并且假设程序报错可以继续执行】
class Foo(object): a1 = 1 def __init__(self,num): self.num = num def show_data(self): print(self.num+self.a1) obj1 = Foo(666) obj1 = Foo(999) print(obj1.num) print(obj1.a1) obj1.num = 18 obj1.a1 = 99 print(obj1.num) print(obj1.a1) print(obj2.a1) print(obj2.num) print(obj2.num) print(Foo.a1) print(obj1.a1) -
看代码写结果,注意返回值。
class Foo(object): def f1(self): return 999 def f2(self): v = self.f1() print('f2') return v def f3(self): print('f3') return self.f2() def run(self): result = self.f3() print(result) obj = Foo() v1 = obj.run() print(v1) -
看代码写结果【如果有错误,则标注错误即可,并且假设程序报错可以继续执行】
class Foo(object): def f1(self): print('f1') @staticmethod def f2(): print('f2') obj = Foo() obj.f1() obj.f2() Foo.f1() Foo.f2() -
看代码写结果【如果有错误,则标注错误即可,并且假设程序报错可以继续执行】
class Foo(object): def f1(self): print('f1') @classmethod def f2(cls): print('f2') obj = Foo() obj.f1() obj.f2() Foo.f1() Foo.f2() -
看代码写结果【如果有错误,则标注错误即可,并且假设程序报错可以继续执行】
class Foo(object): def f1(self): print('f1') self.f2() self.f3() @classmethod def f2(cls): print('f2') @staticmethod def f3(): print('f3') obj = Foo() obj.f1() -
看代码写结果【如果有错误,则标注错误即可,并且假设程序报错可以继续执行】
class Base(object): @classmethod def f2(cls): print('f2') @staticmethod def f3(): print('f3') class Foo(object): def f1(self): print('f1') self.f2() self.f3() obj = Foo() obj.f1() -
看代码写结果
class Foo(object): def __init__(self, num): self.num = num v1 = [Foo for i in range(10)] v2 = [Foo(5) for i in range(10)] v3 = [Foo(i) for i in range(10)] print(v1) print(v2) print(v3) -
看代码写结果
class StarkConfig(object): def __init__(self, num): self.num = num def changelist(self, request): print(self.num, request) config_obj_list = [StarkConfig(1), StarkConfig(2), StarkConfig(3)] for item in config_obj_list: print(item.num) -
看代码写结果
class StarkConfig(object): def __init__(self, num): self.num = num def changelist(self, request): print(self.num, request) config_obj_list = [StarkConfig(1), StarkConfig(2), StarkConfig(3)] for item in config_obj_list: item.changelist(666) -
看代码写结果
class Department(object): def __init__(self,title): self.title = title class Person(object): def __init__(self,name,age,depart): self.name = name self.age = age self.depart = depart d1 = Department('人事部') d2 = Department('销售部') p1 = Person('武沛齐',18,d1) p2 = Person('alex',18,d1) p3 = Person('安安',19,d2) print(p1.name) print(p2.age) print(p3.depart) print(p3.depart.title) -
看代码写结果
class Department(object): def __init__(self,title): self.title = title class Person(object): def __init__(self,name,age,depart): self.name = name self.age = age self.depart = depart def message(self): msg = "我是%s,年龄%s,属于%s" %(self.name,self.age,self.depart.title) print(msg) d1 = Department('人事部') d2 = Department('销售部') p1 = Person('武沛齐',18,d1) p2 = Person('alex',18,d1) p1.message() p2.message() -
编写类完成以下的嵌套关系
""" 角色:学校、课程、班级 要求: 1. 创建北京、上海、深圳三所学校。 2. 创建课程 北京有三种课程:Linux、Python、Go 上海有两种课程:Linux、Python 深圳有一种课程:Python 3. 创建班级(班级包含:班级名称、开班时间、结课时间、班级人数) 北京Python开设:21期、22期 北京Linux开设:2期、3期 北京Go开设:1期、2期 上海Python开设:1期、2期 上海Linux开设:2期 深圳Python开设:1期、2期 """
预习
- 对象之间的嵌套关系
- 异常处理
- 类中的特殊成员:call 等
作者: do康解U
出处: https://www.cnblogs.com/David-domain/>
关于作者:专注数据库、Python 开发、ROS、深度学习,请多多赐教!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(iamkuboy@163.com)咨询.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
2017-06-15 OCP 11G 实验环境安装文档 ( RedHat5.5 + Oracle11g )