第一题:

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

第二题:

[图片]

第三题

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

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

import hashlib
import time
import pickle
class teacher :
def __init__(self,name,gender,age,level,salary): self.name=name
self.gender=gender
self.age=age
self.level=level
self.salary=salary
def create_id(self):
tempral=time.strftime('%Y/%M/%D---%X')
info=self.name+self.gender+str(self.age)+str(self.level)+str(self.salary)
res = hashlib.md5((tempral + info).encode('utf-8')) self.id=res.hexdigest()
return self.id
def tell_info(self): print('''
编号: %s
姓名: %s
性别: %s
年龄: %s
等级: %s
薪资: %s
''' % (
self.id, self.name, self.gender, self.age, self.level, self.salary)) def save(self):
with open(self.id, 'wb') as f:
pickle.dump(self, f)
def get_obj_by_id(self):
return pickle.load(open(self.id,'rb'))
tea=teacher('Gary','male',20,5,10)
tea.create_id()
tea.tell_info()
tea.save()
res=tea.get_obj_by_id()
print(res) class student:
def __init__(self, name, gender, age):
self.name = name
self.age = age
self.gender = gender
def create_id(self):
tempral = time.strftime('%Y/%M/%D---%X')
info=self.name+self.gender+str(self.age)
res = hashlib.md5((tempral + info).encode('utf-8')) self.id=res.hexdigest()
return self.id def tell_info(self):
print('''
编号: %s
姓名: %s
性别: %s
年龄: %s ''' % (
self.id, self.name, self.gender, self.age)) def save(self):
with open(self.id, 'wb') as f:
pickle.dump(self, f) def get_obj_by_id(self):
return pickle.load(open(self.id, 'rb')) tea=student('Gary','male',20)
tea.create_id()
tea.tell_info()
tea.save()
res=tea.get_obj_by_id()
print(res)
import hashlib
import time
import pickle
class teacher :
def __init__(self,name,gender,age,level,salary): self.name=name
self.gender=gender
self.age=age
self.level=level
self.salary=salary
def create_id(self):
tempral=time.strftime('%Y/%M/%D---%X')
info=self.name+self.gender+str(self.age)+str(self.level)+str(self.salary)
res = hashlib.md5((tempral + info).encode('utf-8')) self.id=res.hexdigest()
return self.id
def tell_info(self): print('''
编号: %s
姓名: %s
性别: %s
年龄: %s
等级: %s
薪资: %s
''' % (
self.id, self.name, self.gender, self.age, self.level, self.salary)) def save(self):
with open(self.id, 'wb') as f:
pickle.dump(self, f)
def get_obj_by_id(self):
return pickle.load(open(self.id,'rb'))
tea=teacher('Gary','male',20,5,10)
tea.create_id()
tea.tell_info()
tea.save()
res=tea.get_obj_by_id()
print(res) class student:
def __init__(self, name, gender, age):
self.name = name
self.age = age
self.gender = gender
def create_id(self):
tempral = time.strftime('%Y/%M/%D---%X')
info=self.name+self.gender+str(self.age)
res = hashlib.md5((tempral + info).encode('utf-8')) self.id=res.hexdigest()
return self.id def tell_info(self):
print('''
编号: %s
姓名: %s
性别: %s
年龄: %s ''' % (
self.id, self.name, self.gender, self.age)) def save(self):
with open(self.id, 'wb') as f:
pickle.dump(self, f) def get_obj_by_id(self):
return pickle.load(open(self.id, 'rb')) tea=student('Gary','male',20)
tea.create_id()
tea.tell_info()
tea.save()
res=tea.get_obj_by_id()
print(res) import hashlib
import time
import pickle class People:
def __init__(self, name, gender, age):
self.name = name
self.gender = gender
self.age = age def create_id(self):
m = hashlib.md5()
t = str(time.time())
s = str(self.__dict__)
m.update(t.encode('utf-8'))
m.update(s.encode('utf-8'))
t1.num = m.hexdigest() def tell_info(self):
print(self.__dict__) def save(self):
with open(t1.num, 'wb') as f:
pickle.dump(self.__dict__, f) def get_obj_by_id(self):
return pickle.load(open(self.num, 'rb')) class Teacher(People):
def __init__(self, name, gender, age, level, salary):
People.__init__(self, name, gender, age)
self.level = level
self.salary = salary class Students(People):
def __init__(self, name, gender, age):
People.__init__(self, name, gender, age) t1 = Teacher('gary', 'male', 18, 1, 1000)
s1 = Students('gary', 'male', 18)
t1.create_id()
t1.tell_info()
t1.save()
t1.get_obj_by_id()
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. upc组队赛4 Go Latin

    Go Latin 题目描述 There are English words that you want to translate them into pseudo-Latin. To change a ...

  2. Java对象相等比较(Equals)

    以下代码显示如何实现equals()和hashCode()方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ...

  3. Java SAX解析器

    SAX(针对XML的简单API)是基于事件为XML文档的解析器.不像DOM解析器,SAX解析器创建没有解析树. SAX是一个流接口用于XML的,这意味着使用SAX应用接收事件通知有关XML文档被处理的 ...

  4. Android组件内核之间组件间通信方案(四)下篇

    阿里P7Android高级架构进阶视频免费学习请点击:https://space.bilibili.com/474380680本篇文章将继续从以下两个内容来介绍通信方案: [ViewModel 与 V ...

  5. leetcode.数组.769最多能完成排序的块-Java

    1. 具体题目 数组arr是[0, 1, ..., arr.length - 1]的一种排列,我们将这个数组分割成几个“块”,并将这些块分别进行排序.之后再连接起来,使得连接的结果和按升序排序后的原数 ...

  6. 在规定的时间内出现动画.html

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. 使用sass

    sass安装 compass安装 1.sass 需要安装ruby,然后通过gem安装sass. 2. less有想=两种安装方: 客户端安装: 引入less.js,然后就可以直接用.less文件 &l ...

  8. 深入Dagger:自定义AutoValue

    前言 上一篇文章介绍了JavaPoet的原理和使用,这里在介绍一下AutoValue的原理,并模仿自定义实现一个AutoValue. AutoValue的是Google为了实现ValueClass设计 ...

  9. 数据结构:堆(Heap)

    堆就是用数组实现的二叉树,所有它没有使用父指针或者子指针.堆根据"堆属性"来排序,"堆属性"决定了树中节点的位置. 堆的常用方法: 构建优先队列 支持堆排序 快 ...

  10. android绑定usb前后摄像头

    在Android的系统会有前置摄像头和后置摄像头的定义,摄像头分为SOC类型的摄像头和USB这一类的摄像头,接下要分析就是USB摄像头这一类 . 一般在android或者linux系统中分析一个模块, ...