1.面向对象初识
2.发红包例子
1.面向对象初识
class Person: def __init__(self,name,age,gender): # 内部默认以字典存储这些传进来的数据 self.name = name # 属性 self.age = age self.gender = gender # 之后会把字典返回给调用者,返回给那个对象 def pri(self): # 方法 print('姓名:%s\n年龄:%s\n性别:%s'%(self.name,self.age,self.gender))ze = Person('泽州',11,'m') # 实例对象ze.pri() # 调用对象方法print(ze.__dict__) # {'name': '泽州', 'age': 11, 'gender': 'm'}# ze的对象空间会有一个字典ze.temp = 'aaa' # 增加一个key和valueprint(ze.__dict__)# {'name': '泽州', 'age': 11, 'gender': 'm', 'temp': 'aaa'}
2.发红包例子
# 为了实现公平,先随机去除红包数-1的随机数,进行排序,添加头尾,循环该列表后一个元素减去前一个元素得到每个人的红包。
import randomdef t3(money,num): l = random.sample(range(1,money*100),k=num-1) # *100会有小数 # print(l) # 随机的9个数 l.sort() # 排序 l.insert(0,0) l.append(money*100) # 添加总数 # print(l) for i in range(len(l)-1): yield (l[i+1] - l[i]) / 100ret = t3(100,10)count = 1for i in ret: print("第%s个人:%s元" % (count,i)) count += 1
图例: