python之time、datetime、json实战

一、time实战

     time模块提供了各种与时间有关系的库

1.时间戳

          什么是时间戳?时间戳可以理解为区块的“出厂日期”,它是指从格林威治时间1970年01月01日00时00分00秒(北京时间)起,截止到现在的总秒数。

比如:3600,表示的就是1970年01月01日01时00分00秒。意思是从1970年01月01日08时00分00秒起,截止到现在的秒数。

例如:北京时间 2015年12月31日07:00:00,那么它的时间戳就是1451552400,意思是从北京时间 1970年1月1 日8时起,一共经历了1451552400秒

 

import time as t #调用time库重命名为t  要使用它必须得先调用它

print('获取时间戳:',t.time())
print('获取当前时间的字符串格式:',t.ctime())
print('时间戳转为字符串:',t.ctime(t.time()))
print('时间戳转为struct_time:',t.gmtime(t.time()))
print('时间戳转为本地的时间:',t.localtime(t.time()))

 

 二、datetime实战

相比于time模块,datatime也是表示时间的,但是会更加直观

import datetime #调用datetime库
import time     #调用time库

print('获取当前时间:',datetime.datetime.now())
print('时间戳转换格式:',datetime.datetime.fromtimestamp(time.time()))
print('在当前基础上增加3小时:',datetime.datetime.now()+datetime.timedelta(hours=3))
print('在当前基础上减少3小时:',datetime.datetime.now()+datetime.timedelta(hours=-3))
print('在当前基础上增加2天:',datetime.datetime.now()+datetime.timedelta(days=2))
print('在当前基础上减少1分钟:',datetime.datetime.now()+datetime.timedelta(minutes=-1))

获取当前时间:

import datetime #导入库
print('获取当前时间:',datetime.datetime.now())
from datetime import datetime
print('获取当前时间:',datetime.now())

 

 三、json实战

1.序列化和反序列化

序列化:把内存里的数据类型转为字符串的数据类型,使能够存储到硬盘或通过网络传输到远程,因为硬盘或者网络传输时只接受bytes的数据类型。简单的说就是把Python的数据类型(字典,元组,列表)转为str的数据 类型过程。

反序列化:就是str的数据类型转为Python对象的过程。

2.序列化和反序列化的关键字

dumps():对python对象(list,tuple,dict)进行序列化

loads():对python对象(list,tuple,dict)进行反序列化

dump():对文件进行序列化(本质上把内容写到文件里面

load():对文件进行反序列化(本质上是读取文件里面的内容)

3.列表的序列化和反序列化

#列表的序列化

list1=[x for x in range(5)]
import json
liststr=json.dumps(list1)
print(liststr)        #查看序列化后内容 看起来和之前没什么区别
print(type(liststr))  #查看序列化后的类型 为字符串的类型

 

#列表的反序列化

strlist=json.loads(listsrt) 
print(strlist)
print(type(strlist))

  

4.元组的序列化和反序列化

#元组的序列化

tuple1=(1,2,3)
import json
tuplstr=json.dumps(tuple1)
print(tuplstr)
print(type(tuplstr))

 

#元组的反序列化

strtuple=json.loads(tuplstr)
print(strtuple)
print(type(strtuple))

 

5.字典的序列化和反序列化

#字典的序列化

dict1={"name":"caiying","age":28}
import json
dictstr=json.dumps(dict1)
print(dictstr)
print(type(dictstr))

 

#字典的反序列化

strdict=json.loads(dictstr)
print(strdict)
print(type(strdict))

 

6.文件的序列化和反序列化

#文件的序列化

dict1={"name":"caiying","age":28}
import json
json.dump(dict1,open('data.txt','w')) #将字典dict1的内容写入文件data.txt,再将它序列化

 

#文件的反序列化

print(json.load(open('data.txt','r'))) #打开文件data.txt读取文件内容,将它反序列化再输出

 

posted @ 2021-11-26 14:52  Cyyy-  阅读(214)  评论(0)    收藏  举报