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:周测错题的更多相关文章

  1. SSM自测错题解析

    试题解析:spring 中bean的作用域有:singleton.session.prototype.request.global Session 试题解析:使用import导入子元素需要用prope ...

  2. mybatis自测错题总结

    试题分析:MyBatis有两种事务管理器类型是JDBC和MANAGED   试题分析:mybatis-config.xml文件使用用来编写影响mybatis行为的设置(settings) 和属性(pe ...

  3. 20175316盛茂淞 《java程序设计》第三周课堂测试错题总结

    20175316盛茂淞 <java程序设计>第三周课堂测试错题总结 出现问题 错题总结 题目1 在Ubuntu中用自己的有位学号建一个文件,教材p87 Example4_15 1. 修改代 ...

  4. Ajax与JqueryUI和EasyUI错题总结

    Ajax与JqueryUI和EasyUI错题总结 正确答案A,解析:此题考察的是JQuery UI下的menu插件的使用,menu提供ui-state-disabled class 方法禁用任何菜单项 ...

  5. 错题集锦(二) -- Java专项

    错题集锦(二) -- Java专项 标签(空格分隔): 找工作 JVM的内存模型 线程共享: 堆(Heap):主要存放一些对象实例 方法区(Method Area / Non-Heap):用于存储已被 ...

  6. objective-c 错题

    //1, NSString *name = [[NSString alloc]initWithString:@"张三"]; NSLog(@"%d",[name ...

  7. HDU2669 第六周练习I题(扩展欧几里算法)

    第六周练习I题 I - 数论,线性方程 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u ...

  8. hibernate错题解析

    01 Hibernate错题分析   解析: 此题目考查的是对Hibernate中交叉连接的理解.HQL支持SQL风格的交叉连接查询,交叉连接适用于两个类之间没有定义任何关联时.在where字句中,通 ...

  9. NOIp2014提高组初赛错题简析

    总体分析 \(89pts\),粗略来看选择题错的比较多,\(-6pts\).同时又是尿性的填空杀扣了\(5pts\). 不过后面的两大题全对了还是可喜可贺 错题精析 单项选择T8 编译器的主要功能是( ...

随机推荐

  1. 【软件安装】在 CentOS 7(Linux)上部署流媒体服务(Tengine、ffmpeg、Centos 7、nginx-http-flv-module、OBS)

    Centos7+Tengine+Nginx-http-flv-module+ffmpeg+OBS搭建流媒体服务器 一.需求和背景 视频直播是基于领先的内容接入.分发网络和大规模分布式实时转码技术打造的 ...

  2. go test 测试用例那些事(二) mock

    关于go的单元测试,之前有写过一篇帖子go test测试用例那些事,但是没有说go官方的库mock,很有必要单独说一下这个库,和他的实现原理. mock主要的功能是对接口的模拟,需要在写代码的时候定义 ...

  3. nginx 日志功能详解

    nginx 日志功能 在 nginx 中有两种日志: access_log:访问日志,通过访问日志可以获取用户的IP.请求处理的时间.浏览器信息等 error_log:错误日志,记录了访问出错的信息, ...

  4. wpf中实现快捷键

    <Window.InputBindings> <KeyBinding Gesture="Ctrl+Alt+Q" Command="{Binding Yo ...

  5. DJANGO-天天生鲜项目从0到1-006-首页-内容展示

    本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p= ...

  6. [leetcode/lintcode 题解] 一致性哈希 II · Consistent Hashing II

    [题目描述] 在 Consistent Hashing I 中我们介绍了一个比较简单的一致性哈希算法,这个简单的版本有两个缺陷: 增加一台机器之后,数据全部从其中一台机器过来,这一台机器的读负载过大, ...

  7. redis启动报错:The Windows version of Redis allocates a memory mapped heap for sharing with

    windows系统下通过cmd命令:redis-server.exe redis.windows.conf 启动redis报错,控制台报错如下: The Windows version of Redi ...

  8. 使用@ControllerAdvice处理异常

    在Spring 3.2中,新增了@ControllerAdvice.@RestControllerAdvice 注解,可以用于定义@ExceptionHandler.@InitBinder.@Mode ...

  9. 学习JavaScript数据结构与算法 2/15

    第一章 JavaScript简介 js不同于C/C++,C#,JAVA,不是强类型语言. 通常,代码质量可以用全局变量和函数的数量来考量(数量越多越糟).因此,尽可能避免使用全局变量. JS数据类型 ...

  10. Python随机数函数

    Python随机数函数: ''' choice(seq) 从序列的元素中随机选出一个元素 randrange ([start,] stop [,step]) 从指定范围内,在指定步长递增的集合中 获取 ...