今日学习内容:
逛园子看到一句很激励自己的话:我从不相信什么懒洋洋的自由,我向往的自由是通过勤奋和努力实现更广阔的人生,那样的自由才是珍贵的、有价值的。我相信一万小时定律,我从来不相信天上掉馅饼的灵感和坐等的成就。做一个自由又自律的人,靠势必实现的决心认真地活着。
常用模块:
1、time与datetime
2、random模块
3、os模块
4、sys模块
5、shutil模块
6、json与piclke
1、time模块
1、时间戳:time.time():用来计算时间间隔
2、结构化时间:time.localtime(),time.gmtime():任意获取当前时间的任意部分,时间戳与格式化字符串之前的转换
3、格式化的字符串形式:time.serftime('%Y-%m-%d %H-%M-%S'):方便的取出格式化字符串形式的时间,用来显示
datetime:
datetime.datetime.now()+datetime.timedelta(days+3):可以方便的对时间进行加减
2、random模块
random:与随机数相关的模块
random.random(x,y) :x,y为开闭区间
random.randint(x,y) : x,y为开区间
random.randrange(x,y) :x,y为开闭区间
random.choice([x,y,z]) :取容器内的x,y,z中的一个值
random.uniform(x,y) : 闭区间 浮点型
用random模块做的一个关于生成验证码的函数
#################################
def make_code(i):
res = ""
for j in range(i):
num = str(random.randint(0,9))
c = chr(random.randint(65,90))
s = random.choice([num,c])
res += s
return res
print(make_code(4))
################################
3、os模块
os表示操作系统相关
第一大块功能就是围绕文件和目录的操作
os.path.dirname(__file__)获取当前文件所在文件夹的路径
os.enbiron获取电脑内的环境变量
4、sys模块:
系统相关,一般用于设计脚本程序
常用argv 获取cmd输入的参数
5、shutil 模块
用于简化文件操作(文件的高级操作)
常用方法:
copy
move
rm
make_archive
6、json,pickle
1、什么是序列化?
序列化值是将内存中的数据类型转换成一种中间格式,该格式可以用来存到硬盘中或者基于网络传输
2、为何要用序列化?
持久化(把某一时刻程序的运行状态永久保存下来)
基于网络传输可以跨平台交互数据
3、如何用序列化?
json:优点:兼容所有语言跨平台交互数据
缺点:不能支持python的所有格式
pickle:优点:可以支持所有python格式
缺点:不能跨平台
json.dumps(数据类型) json.loads(json格式的字符串)
json.dump(数据类型,文件对象) json.load(文件对象)