1、在 Python 类里面初始化自己
当我们写一个类的时候,一般会覆写 __init__
方法,来初始化一些数据。
class People:
def __init__(self,name,age,salary):
self.name=name
self.age=age
self.salary=salary
def intro(self):
print(f'我的名字是{self.name},今年{self.age}岁了,我的月薪为{self.salary}元')
这里的 __init__ 叫做构造函数。它负责在类初始化为实例的时候,初始化必要的数据。
每当我们需要初始化一个实例的时候,都要传入 name 、age 、salary 这三个参数 。
2、隐患 —— redis - py 的 blpop 可能由于网络波动导致收不到信息
在使用 blpop 的时候,如果中途因为网络波动或者某些其他原因导致连接池失效,那么就永远接收不到信息了,虽然 redis - py 有连接状态检查的功能,但是由于程序是阻塞的,redis - py 的连接状态检查功能不能正常使用 。
为了解决这个问题,就需要 blpop 的超时功能 。让 blpop 每几分钟就断开,检查一下网络,再重新连上 。
设置超时时间为 5 分钟,如果 5 分钟内列表没有收到信息都会返回 None ,此时只需要重新执行 blpop ,在执行的瞬间会检查连接的状态,如果连接池有问题,那么它会重新连接 。通过添加超时时间,解决了数据实时性和网络连接丢失的问题 。
3、两行代码压缩文件
>>> from shutil import make_archive
>>> make_archive('8989','zip','999')
'/home/hayestao/8989.zip'
>>>