第一题:

  1. class Parent(object):
  2. x = 1
  3. class Child1(Parent):
  4. pass
  5. class Child2(Parent):
  6. pass
  7. print(Parent.x, Child1.x, Child2.x)#由于前面只有在父类定义一个x,因此全部输出的都是1 #1 1 1
  8. Child1.x = 2
  9. print(Parent.x, Child1.x, Child2.x)#子类会优先从自己这边查找,因此child1输出的2 #1 2 1
  10. Parent.x = 3
  11. print(Parent.x, Child1.x, Child2.x)#当子类未被定义的时候,会去父类查找,因此child2输出的是3# 3 2 3

第二题:

[图片]

第三题

新式类:继承了object类以及该类的子类就是新式类了,而且python3中所有的都是新式类

经典类:相对的没有继承object类以及该类的子类就是经典类,只有再python2中有经典类

  1. import hashlib
  2. import time
  3. import pickle
  4. class teacher :
  5. def __init__(self,name,gender,age,level,salary):
  6. self.name=name
  7. self.gender=gender
  8. self.age=age
  9. self.level=level
  10. self.salary=salary
  11. def create_id(self):
  12. tempral=time.strftime('%Y/%M/%D---%X')
  13. info=self.name+self.gender+str(self.age)+str(self.level)+str(self.salary)
  14. res = hashlib.md5((tempral + info).encode('utf-8'))
  15. self.id=res.hexdigest()
  16. return self.id
  17. def tell_info(self):
  18. print('''
  19. 编号: %s
  20. 姓名: %s
  21. 性别: %s
  22. 年龄: %s
  23. 等级: %s
  24. 薪资: %s
  25. ''' % (
  26. self.id, self.name, self.gender, self.age, self.level, self.salary))
  27. def save(self):
  28. with open(self.id, 'wb') as f:
  29. pickle.dump(self, f)
  30. def get_obj_by_id(self):
  31. return pickle.load(open(self.id,'rb'))
  32. tea=teacher('Gary','male',20,5,10)
  33. tea.create_id()
  34. tea.tell_info()
  35. tea.save()
  36. res=tea.get_obj_by_id()
  37. print(res)
  38. class student:
  39. def __init__(self, name, gender, age):
  40. self.name = name
  41. self.age = age
  42. self.gender = gender
  43. def create_id(self):
  44. tempral = time.strftime('%Y/%M/%D---%X')
  45. info=self.name+self.gender+str(self.age)
  46. res = hashlib.md5((tempral + info).encode('utf-8'))
  47. self.id=res.hexdigest()
  48. return self.id
  49. def tell_info(self):
  50. print('''
  51. 编号: %s
  52. 姓名: %s
  53. 性别: %s
  54. 年龄: %s
  55. ''' % (
  56. self.id, self.name, self.gender, self.age))
  57. def save(self):
  58. with open(self.id, 'wb') as f:
  59. pickle.dump(self, f)
  60. def get_obj_by_id(self):
  61. return pickle.load(open(self.id, 'rb'))
  62. tea=student('Gary','male',20)
  63. tea.create_id()
  64. tea.tell_info()
  65. tea.save()
  66. res=tea.get_obj_by_id()
  67. print(res)
  1. import hashlib
  2. import time
  3. import pickle
  4. class teacher :
  5. def __init__(self,name,gender,age,level,salary):
  6. self.name=name
  7. self.gender=gender
  8. self.age=age
  9. self.level=level
  10. self.salary=salary
  11. def create_id(self):
  12. tempral=time.strftime('%Y/%M/%D---%X')
  13. info=self.name+self.gender+str(self.age)+str(self.level)+str(self.salary)
  14. res = hashlib.md5((tempral + info).encode('utf-8'))
  15. self.id=res.hexdigest()
  16. return self.id
  17. def tell_info(self):
  18. print('''
  19. 编号: %s
  20. 姓名: %s
  21. 性别: %s
  22. 年龄: %s
  23. 等级: %s
  24. 薪资: %s
  25. ''' % (
  26. self.id, self.name, self.gender, self.age, self.level, self.salary))
  27. def save(self):
  28. with open(self.id, 'wb') as f:
  29. pickle.dump(self, f)
  30. def get_obj_by_id(self):
  31. return pickle.load(open(self.id,'rb'))
  32. tea=teacher('Gary','male',20,5,10)
  33. tea.create_id()
  34. tea.tell_info()
  35. tea.save()
  36. res=tea.get_obj_by_id()
  37. print(res)
  38. class student:
  39. def __init__(self, name, gender, age):
  40. self.name = name
  41. self.age = age
  42. self.gender = gender
  43. def create_id(self):
  44. tempral = time.strftime('%Y/%M/%D---%X')
  45. info=self.name+self.gender+str(self.age)
  46. res = hashlib.md5((tempral + info).encode('utf-8'))
  47. self.id=res.hexdigest()
  48. return self.id
  49. def tell_info(self):
  50. print('''
  51. 编号: %s
  52. 姓名: %s
  53. 性别: %s
  54. 年龄: %s
  55. ''' % (
  56. self.id, self.name, self.gender, self.age))
  57. def save(self):
  58. with open(self.id, 'wb') as f:
  59. pickle.dump(self, f)
  60. def get_obj_by_id(self):
  61. return pickle.load(open(self.id, 'rb'))
  62. tea=student('Gary','male',20)
  63. tea.create_id()
  64. tea.tell_info()
  65. tea.save()
  66. res=tea.get_obj_by_id()
  67. print(res)
  68. import hashlib
  69. import time
  70. import pickle
  71. class People:
  72. def __init__(self, name, gender, age):
  73. self.name = name
  74. self.gender = gender
  75. self.age = age
  76. def create_id(self):
  77. m = hashlib.md5()
  78. t = str(time.time())
  79. s = str(self.__dict__)
  80. m.update(t.encode('utf-8'))
  81. m.update(s.encode('utf-8'))
  82. t1.num = m.hexdigest()
  83. def tell_info(self):
  84. print(self.__dict__)
  85. def save(self):
  86. with open(t1.num, 'wb') as f:
  87. pickle.dump(self.__dict__, f)
  88. def get_obj_by_id(self):
  89. return pickle.load(open(self.num, 'rb'))
  90. class Teacher(People):
  91. def __init__(self, name, gender, age, level, salary):
  92. People.__init__(self, name, gender, age)
  93. self.level = level
  94. self.salary = salary
  95. class Students(People):
  96. def __init__(self, name, gender, age):
  97. People.__init__(self, name, gender, age)
  98. t1 = Teacher('gary', 'male', 18, 1, 1000)
  99. s1 = Students('gary', 'male', 18)
  100. t1.create_id()
  101. t1.tell_info()
  102. t1.save()
  103. t1.get_obj_by_id()
  104. print(t1.get_obj_by_id())

gary's mod的更多相关文章

  1. 函数mod(a,m)

    Matlab中的函数mod(a,m)的作用: 取余数 例如: mod(25,5)=0; mod(25,10)=5; 仅此.

  2. ORACLE 数据库 MOD 函数用法

    1.求2和1的余数. Select mod(2,1) from dual: 2能被1整除所以余数为0. 2.MOD(x,y)返回X除以Y的余数.如果Y是0,则返回X的值. Select mod(2,0 ...

  3. 黑科技项目:英雄无敌III Mod <<Fallen Angel>>介绍

    英雄无敌三简介(Heroes of Might and Magic III) 英3是1999年由New World Computing在Windows平台上开发的回合制策略魔幻游戏,其出版商是3DO. ...

  4. [日常训练]mod

    Description 给定$p_1,p_2,-,p_n,b_1,b_2,...,b_m$, 求满足$x\;mod\;p_1\;\equiv\;a_1,x\;mod\;p_2\;\equiv\;a_2 ...

  5. Apache Mod/Filter Development

    catalog . 引言 . windows下开发apache模块 . mod进阶: 接收客户端数据的 echo 模块 . mod进阶: 可配置的 echo 模块 . mod进阶: 过滤器 0. 引言 ...

  6. FZU 1752 A^B mod C(快速加、快速幂)

    题目链接: 传送门 A^B mod C Time Limit: 1000MS     Memory Limit: 65536K 思路 快速加和快速幂同时运用,在快速加的时候由于取模耗费不少时间TLE了 ...

  7. HDOJ 4389 X mod f(x)

    数位DP........ X mod f(x) Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/ ...

  8. hdu.1104.Remainder(mod && ‘%’ 的区别 && 数论(k*m))

    Remainder Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  9. 对于一个负数mod正数

    鸟神说.. a/b靠零取整 然后呢..a%b定义成a-(a/b)*b c语言就是这么算的... 那么python2.6是怎么算的呢 如果最后你取模想得到一个正数.. 那么在上述取模定义不变的情况下 p ...

随机推荐

  1. shell 字符串匹配变量(只取数字或者取固定字符串)

    var1=abc3559   #想要获得3559 操作: var1_key=`echo $var1 | tr -cd "[0-9]"` https://www.cnblogs.co ...

  2. C++基础知识随记

    一.什么情况必须使用初始化列表的方式声明构造函数? 1.包含常量类型的成员 2.包含引用类型的成员 3.包含没有默认构造函数的类类型成员 4.优点:对于包含有类类型成员的类来说,省去了调用一次默认构造 ...

  3. web跨域

    之前对于跨域相关的知识一致都很零碎,正好现在的代码中用到了跨域相关的,现在来对这些知识做一个汇总整理,方便自己查看,说不定也可能对你有所帮助. 本篇主要内容如下: 浏览器同源策略 http 请求跨域 ...

  4. Spring Cloud Alibaba

    Spring Cloud Alibaba Dubbo Dubbo Dubbo 系列 [Dubbo 系列总结] [Dubbo 系列(01)最简使用姿态] [Dubbo 系列(02)整体架构] Dubbo ...

  5. 【小程序】获取到的e.target与e.currentTarget区别

    [小程序]获取到的e.target与e.currentTarget区别:https://blog.csdn.net/qq_33744228/article/details/80310294 使用e.t ...

  6. Java-技术专区-虚拟机系列-内存模型(JMM)

           Java8内存模型—永久代(PermGen)和元空间(Metaspace) 一.JVM 内存模型 根据 JVM 规范,JVM 内存共分为虚拟机栈.堆.方法区.程序计数器.本地方法栈五个部 ...

  7. Activity 通知

    //通知图标 int icon = android.R.drawable.stat_notify_chat; //创建通知对象,icon通知图标,tickerText摘要,System.current ...

  8. nodejs模块——fs模块 使用fs.read读文件

    使用fs.read读文件 fs.read() 先介绍fs.open. fs.open(path,flags,[mode],callback)方法用于打开文件,以便fs.read()读取. 参数说明: ...

  9. JavaIO流之File操作

    IO流: File: File(文件/文件夹地址)构造函数: public File(String path); public File(String parentPath, String child ...

  10. vue中js获取组件实例

    获取到的VM实例,外部js仍然能自由调用VM的一切属性和方法. <template> </template> <script> // 声明变量currVM let ...