logging日志模块 , 序列化json pickle , 随机数random

创建日志模块:

手动

# import logging
# logging.basicConfig(
#     level=logging.INFO,
#     # level=
#     format='%(asctime)s-%(name)s-[%(lineno)d]-%(message)s',
#     filename='test.log',
#     filemode='a+',
# )
# logging.debug('我是风儿')
# logging.info('你是沙')
# logging.warning('缠缠绵绵到我家')
# logging.error('疯疯狂狂又一宿')
# logging.critical('我起不来床,你下不了地')

自动

获取日志>定义一个模板>生成文件屏幕流>把模板给流>将两个流加入日志
# import logging
# logger=logging.getLogger('开发日志')          #获取一个日志
# # formatter=logging.Formatter('%(asctime)s-%(name)s-[%(lineno)d]-%(message)s')  定义一个模板
# # ch=logging.StreamHandler()  生成一个屏幕流
# # fh=logging.FileHandler('tt.log','a',encoding='utf-8') 生成一个文件流
# ch.setFormatter(formatter) 把定义的模板绑定给咱们创建存储日志的流
# fh.setFormatter(formatter)
# # logger.addHandler(fh)将文件流加入日志
# # logger.addHandler(ch)
# logger.debug('你好啊')
# logger.info('你好啊')
# logger.warning('你好啊')
# logger.error('你好啊')
# logger.critical('你好啊'

序列化:将数据结构转化成字符串

dump,dumps 将对像变成字符存在文件中

load,loads 将文件中的字符串变成原对象

json:

dic={'1':'3','7':9}
f=open('a1','w',enconding='utf-8')
json.dump(dic,f)                         把字典变字符写进文件
f=open('a1','r',enconding='utf-8')
print(josn.load(f))                      把文件以字典读出
dic={'name':'meet','age'=18}
s=json.dumps(dic)
print(json.loads)                      不用写入文件,直接转化

pickle:

import pickle
dic={1:'2',3:'4'}
f=open('a1','wb')           
pickle.dump(dic,f)   把字典变字节写入文件
f=open('a1','rb')
print(pickle.load(f))  把字节变字典输出 
import pickle
dic={'1':2,'3':4}
s=pickle.dumps(dic)     字典变字节
print(pickle.loads(s))  字节变字典

random

print(random.random())    0-1之间的小数

print(random.uniform(1,5))  1-5之间的小数

print(random.randint(1,36))   随机整数

print(random.randint(1,5,2)   随机奇数

lst=[1,2,3,4,27,37]
print(random.choice(lst))        列表随机拿一个
print(random.sample(lst,2))      列表随机拿两个
lst=[3,7,4,9]
print(random.shuffle(lst))       列表打乱

  

 

posted @ 2019-01-16 20:05  weize111  阅读(215)  评论(0编辑  收藏  举报