菜鸡源码,专注精品下载!
当前位置:首页 > 建站教程 > 建站知识

将Python时间戳互相转换

发布时间:2024-01-05  栏目:建站知识   浏览:   分类:python教程 时间戳

Python中,时间戳互转可以使用`datetime`模块的`fromtimestamp()`和`timestamp()`方法。首先,将时间戳转换为`datetime`对象,可以使用`fromtimestamp()`方法,传入时间戳参数。然后,将`datetime`对象转换回时间戳,可以使用`timestamp()`方法。这两个方法分别用于将时间戳转换为可读的日期和时间格式,以及将日期和时间格式转换回时间戳。在处理时间戳时,需要注意时区问题,可以使用`pytz`库进行时区转换。

查询时间:可查询当前时间与时间戳
时间戳转时间:在前面输入框中输入时间戳点击按钮可转成时间
时间转时间戳:在前面输入框中输入时间点击按钮可转成时间戳,时间格式如果不知道可复制查询时间中的时间格式

importtimeimportosimporttkinterastkimportthreadingimportdatetimedefsjc():t.delete(1.0,tk.END)i=datetime.datetime.now().strftime('%Y-%m-%d%H:%M:%S')print(i)t.insert('end','当前时间:')t.insert(tk.INSERT,'\n')t.insert('end',i)t.insert(tk.INSERT,'\n')#转换成时间数组timeArray=time.strptime(i,"%Y-%m-%d%H:%M:%S")#转换成时间戳timestamp=int(time.mktime(timeArray))print(timestamp)t.insert('end','当前时间戳:')t.insert('end',timestamp)t.insert(tk.INSERT,'\n')#utc5_beginTime=(int(timestamp/86400)+1)*86400+18000#utc5_endTime=utc5_beginTime+86400*(int(hdts)-1)+79200#print("----------utc-5")#print(utc5_beginTime)#print(utc5_endTime)#t.insert('end',"----------utc-5")#t.insert(tk.INSERT,'\n')#t.insert('end',utc5_beginTime)#t.insert(tk.INSERT,'\n')#t.insert('end',utc5_endTime)#t.insert(tk.INSERT,'\n')#utc2_beginTime=(int(timestamp/86400)+1)*86400-7200#utc2_endTime=utc2_beginTime+86400*(int(hdts)-1)+79200#print("----------utc+2")#print(utc2_beginTime)#print(utc2_endTime)#t.insert('end',"----------utc+2")#t.insert(tk.INSERT,'\n')#t.insert('end',utc2_beginTime)#t.insert(tk.INSERT,'\n')#t.insert('end',utc2_endTime)#t.insert(tk.INSERT,'\n')#utc8_beginTime=(int(timestamp/86400)+1)*86400-28800#utc8_endTime=utc2_beginTime+86400*(int(hdts)-1)+79200#print("----------utc+8")#print(utc8_beginTime)#print(utc8_endTime)#t.insert('end',"----------utc+8")#t.insert(tk.INSERT,'\n')#t.insert('end',utc8_beginTime)#t.insert(tk.INSERT,'\n')#t.insert('end',utc8_endTime)#t.insert(tk.INSERT,'\n')defzsj():hdts=txt.get()ifhdts=="输入时间戳":t.insert('end','输入时间戳')t.insert(tk.INSERT,'\n')returnt.insert('end','时间戳:')t.insert('end',hdts)t.insert(tk.INSERT,'\n')#将时间戳转换为datetime对象dt_object=datetime.datetime.fromtimestamp(int(hdts))#格式化输出时间formatted_time=dt_object.strftime("%Y-%m-%d%H:%M:%S")print("转换后的时间:",formatted_time)t.insert('end','时间:')t.insert('end',formatted_time)t.insert(tk.INSERT,'\n')defzsjc():sj=txt1.get()ifsj==None:t.insert('end','输入时间')t.insert(tk.INSERT,'\n')print('输入时间')returnt.insert('end','时间:')t.insert('end',sj)t.insert(tk.INSERT,'\n')#转换成时间数组timeArray=time.strptime(sj,"%Y-%m-%d%H:%M:%S")print(timeArray)#转换成时间戳timestamp=int(time.mktime(timeArray))print(timestamp)t.insert('end','时间戳:')t.insert('end',timestamp)t.insert(tk.INSERT,'\n')defthread_it(func,*args):'''将函数打包进线程'''k=threading.Thread(target=func,args=args)k.setDaemon(True)k.start()defget_servertime(self):"""获取服务器当前时间:return:当前服务器时间戳"""req_body=self.get_request_body('gmGetServerTime')rsp=self.send_http_request(req_body).json()print(rsp['data']['serverTime'])returnrsp['data']['serverTime']if__name__=='__main__':window=tk.Tk()window.title('sjc')window.geometry("200x300")t=tk.Text(window,width='250',height=15,bg='LightBlue')t.pack(side='bottom')btn1=tk.Button(window,text="查询时间",bg="orange",command=lambda:thread_it(sjc))btn1.place(x=110,y=5)btn2=tk.Button(window,text="时间戳转时间",bg="orange",command=lambda:thread_it(zsj))btn2.place(x=110,y=35)btn3=tk.Button(window,text="时间转时间戳",bg="orange",command=lambda:thread_it(zsjc))btn3.place(x=110,y=65)txt=tk.Entry(window,width=13)txt.place(x=10,y=35)txt.insert('end',2)txt1=tk.Entry(window,width=13)txt1.place(x=10,y=65)txt1.insert('end','')#wz1=tk.Label(window,text='输入开服天数:')#wz1.place(x=0,y=0)window.mainloop()


评论
建站知识
建站知识
使用技巧
调试安装
运营推广