day17

今日学习内容:

逛园子看到一句很激励自己的话:我从不相信什么懒洋洋的自由,我向往的自由是通过勤奋和努力实现更广阔的人生,那样的自由才是珍贵的、有价值的。我相信一万小时定律,我从来不相信天上掉馅饼的灵感和坐等的成就。做一个自由又自律的人,靠势必实现的决心认真地活着。

常用模块:

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(文件对象)

原文地址:https://www.cnblogs.com/yaoxiaofeng/p/9454576.html