week4:周测错题
4.如何在类外,给对象动态添加绑定方法
- import types
- def qingtianzhu(obj,name):
- print("请我叫我一柱擎天,简称{},颜色是{}".format(name,obj.color))
- obj.qingtianzhu = types.MethodType(qingtianzhu,obj)
- obj.qingtianzhu("擎天柱")
8.菱形继承中,如何查看多继承调用顺序关系
- '''mro列表'''
12.写一个能体现多态的案例
- class Soldier():
- def attack(self):
- pass
- def back(self):
- pass
- # 陆军
- class Army(Soldier):
- def attack(self):
- print("[陆军]搏击,ufc,无限制格斗,太极,八卦,占星,制作八卦符")
- def back(self):
- print("[陆军]白天晨跑10公里,也行800百公里")
- # 海军
- class Navy(Soldier):
- def attack(self):
- print("[海军]潜泳水下30个小时,手捧鱼雷,亲自送到敌人的老挝,炸掉敌人的碉堡")
- def back(self):
- print("[海军]每小时在海底夜行800公里,游的比鲨鱼还快")
- # 空军
- class AirForce(Soldier):
- def attack(self):
- print("[空军]空中夺导弹,手撕飞机,在空中打飞机,精准弹幕")
- def back(self):
- print("[空军]高中跳伞,落地成盒")
- army_obj = Army()
- navy_obj = Navy()
- af_obj = AirForce()
- lst = [army_obj,navy_obj,af_obj] # 对象列表
- strvar = """
- 1.所有兵种开始攻击训练
- 2.所有兵种开始撤退训练
- 3.空军练习攻击,其他兵种练习撤退
- """
- print(strvar)
- num = input("将军请下令,选择训练的种类")
- for i in lst:
- if num == "":
- i.attack()
- elif num == "":
- i.back()
- elif num == "":
- if isinstance(i,AirForce):
- i.attack()
- else:
- i.back()
- else:
- print("将军~ 风太大 我听不见~")
- break
19.模拟int强转整型操作,实现相应方法
- import math
- class MyInt():
- def calc(self,num,sign=1):
- strvar = num.lstrip("")
- if strvar == "":
- return 0
- return eval(strvar) * sign
- def __call__(self,num):
- if isinstance(num , bool):
- if num == True:
- return 1
- elif num == False:
- return 0
- elif isinstance(num,int):
- return num
- elif isinstance(num,float):
- # 方法二
- """
- if num >= 0:
- return math.floor(num)
- else:
- return math.ceil(num)
- """
- return math.floor(num) if num >= 0 else math.ceil(num)
- elif isinstance(num,str):
- if (num[0] == "+" or num[0]== "-") and num[1:].isdecimal():
- if num[0] == "+":
- sign = 1
- else:
- sign = -1
- return self.calc(num[1:],sign)
- elif num.isdecimal():
- return self.calc(num)
- else:
- return "老铁,这个真转不了"
- myint = MyInt()
- res = myint(True)
- print(res)
- res = myint(100)
- print(res)
- res = myint(3333.14)
- print(res, type(res))
20.计算类中自定义成员个数
- class MyClass():
- pty1 = 1
- pty2 = 2
- __pty3 = 3
- pyt3 =10
- pty100 = 90
- def func1():
- pass
- def __func2():
- pass
- def __func3():
- pass
- def __len__(self):
- lst = []
- dic = MyClass.__dict__ # 遍历类中所有成员
- for i in dic: # 遍历类中所有成员
- if not(i.startswith("__") and i.endswith("__")): # 如果开头和结尾都不是以双下划线结尾
- lst.append(i) # 将符合条件的成员添加到列表中
- return len(lst)
23.获取当前类继承的父类
- '''bases'''
week4:周测错题的更多相关文章
- SSM自测错题解析
试题解析:spring 中bean的作用域有:singleton.session.prototype.request.global Session 试题解析:使用import导入子元素需要用prope ...
- mybatis自测错题总结
试题分析:MyBatis有两种事务管理器类型是JDBC和MANAGED 试题分析:mybatis-config.xml文件使用用来编写影响mybatis行为的设置(settings) 和属性(pe ...
- 20175316盛茂淞 《java程序设计》第三周课堂测试错题总结
20175316盛茂淞 <java程序设计>第三周课堂测试错题总结 出现问题 错题总结 题目1 在Ubuntu中用自己的有位学号建一个文件,教材p87 Example4_15 1. 修改代 ...
- Ajax与JqueryUI和EasyUI错题总结
Ajax与JqueryUI和EasyUI错题总结 正确答案A,解析:此题考察的是JQuery UI下的menu插件的使用,menu提供ui-state-disabled class 方法禁用任何菜单项 ...
- 错题集锦(二) -- Java专项
错题集锦(二) -- Java专项 标签(空格分隔): 找工作 JVM的内存模型 线程共享: 堆(Heap):主要存放一些对象实例 方法区(Method Area / Non-Heap):用于存储已被 ...
- objective-c 错题
//1, NSString *name = [[NSString alloc]initWithString:@"张三"]; NSLog(@"%d",[name ...
- HDU2669 第六周练习I题(扩展欧几里算法)
第六周练习I题 I - 数论,线性方程 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u ...
- hibernate错题解析
01 Hibernate错题分析 解析: 此题目考查的是对Hibernate中交叉连接的理解.HQL支持SQL风格的交叉连接查询,交叉连接适用于两个类之间没有定义任何关联时.在where字句中,通 ...
- NOIp2014提高组初赛错题简析
总体分析 \(89pts\),粗略来看选择题错的比较多,\(-6pts\).同时又是尿性的填空杀扣了\(5pts\). 不过后面的两大题全对了还是可喜可贺 错题精析 单项选择T8 编译器的主要功能是( ...
随机推荐
- 【Nginx】如何封禁IP和IP段?看完这篇我会了!!
写在前面 Nginx不仅仅只是一款反向代理和负载均衡服务器,它还能提供很多强大的功能,例如:限流.缓存.黑白名单和灰度发布等等.在之前的文章中,我们已经介绍了Nginx提供的这些功能.小伙伴们可以到[ ...
- 02-URLConf调度器
1.工作原理 django通过urlconf来映射视图函数,只区分路径,不区分http方法 Django确定要使用的根URLconf模块,一般是在settings中的ROOT_URLCONF设置的值. ...
- 循序渐进VUE+Element 前端应用开发(16)--- 组织机构和角色管理模块的处理
在前面随笔<循序渐进VUE+Element 前端应用开发(15)--- 用户管理模块的处理>中介绍了用户管理模块的内容,包括用户列表的展示,各种查看.编辑.新增对话框的界面处理和后台数据处 ...
- 开源 5 款超好用的数据库 GUI 带你玩转 MongoDB、Redis、SQL 数据库
作者:HelloGitHub-*小鱼干 工欲善其事必先利其器,想要玩溜数据库,不妨去试试本文安利的 5 款开源的数据库管理工具.除了流行的 SQL 类数据库--MySQL.PostgreSQL 之外, ...
- DEP(Data Execution Prevention) 数据执行保护
1.原理 数据执行保护,简称“DEP”,英文全称为“Data Execution Prevention”,是一组在存储器上运行额外检查的硬件和软件技术,有助于防止恶意程序码在系统上运行. 此技术由Mi ...
- corosync+pacemaker高可用集群
高可用集群,是指以减少服务中断(如因服务器宕机等引起的服务中断)时间为目的的服务器集群技术.简单的说,集群就是一组计算机,它们作为一个整体向用户提供一组网络资源.这些单个的计算机系统就是集群的节点. ...
- Nginx/Httpd负载均衡tomcat配置
在前一篇博客中我们聊了下用Nginx和httpd对后端tomcat服务做反代相关配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13334180.html: ...
- springboot手动事务回滚
亲测在使用@Transactional.@Transactional(rollbackFor = Exception.class)及catch异常之后 throw new RuntimeExcepti ...
- Springboot(一)springboot简介与入门程序
一.springboot简介: 对spring框架盛行了多年的java方向开发人员来说,每个人java开发已经把spring框架当做开发中不可或缺的一部分. 之前传统的模式都是以application ...
- laravel 验证码使用示例
一.去https://packagist.org/网站搜索验证码的代码依赖,关键词:captcha 地址:https://packagist.org/packages/mews/captcha 二.环 ...