小編給大家分享一下利用python制作時間戳轉(zhuǎn)換工具的方法,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比謝家集網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式謝家集網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋謝家集地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。前言:
時間戳的定義
Unix時間戳(Unix時間戳)或稱Unix時間(Unix時間),POSIX時間(POSIX時間),是一種時間表示方式,定義為從格林威治時間1970年01月01日00時00分00秒起至現(xiàn)在的總秒數(shù).Unix時間戳不僅被使用在Unix的系統(tǒng),類Unix的系統(tǒng)中,也在許多其他操作系統(tǒng)中被廣泛采用。多數(shù)的Unix系統(tǒng)將時間戳以一個32位整型進(jìn)行保存,這可能會在2038年1月19日產(chǎn)生一些問題(Y2038問題)。
作為一個程序員一般情況下,json和時間戳是常用的兩個工具,我咨詢過很多個朋友,他們一般都是通過在線工具對json進(jìn)行格式化,或者查詢時間戳。這個方式也是我之前的使用方式,此種方式不足之處如下:
1.每次打開過程步驟繁瑣,即使收藏了也要先打開瀏覽器,然后點(diǎn)擊
2.如果打開的瀏覽器標(biāo)簽足夠多的話,根本找不到(就是說的我這樣的人)
3.等
后來我發(fā)現(xiàn)了hijson這個工具可以本地格式化json后,一直想找一個本地查找時間戳的小工具。奈何互聯(lián)網(wǎng)大神們沒有滿足我的需求。于是我決定自己寫一個。
本文的環(huán)境
python 3.6
time 庫
tkinter 庫
可選:可以使用pyinstaller打包成exe文件運(yùn)行。程序大小大約8m,運(yùn)行時內(nèi)存占用15m左右。
先貼代碼(因?yàn)闀r間有限,沒有寫的太工整,見諒):
from tkinter import * from time import * ''' 1、這個程序?qū)崿F(xiàn)時間戳和日期格式的相互轉(zhuǎn)換。 2、使用grid方法按照表格方式對組件位置進(jìn)行安排 3、通過Button按鈕進(jìn)行轉(zhuǎn)換和刷新操作。 4、通過Entry來獲取用戶輸入。 ''' root = Tk() root.title('時間戳轉(zhuǎn)換') root.resizable(0,0)#禁止拉伸 會變丑 # 對變量進(jìn)行創(chuàng)建,和數(shù)據(jù)初始化 Label1 = Label(root, text='時間戳:').grid(row=0, column=0) Label2 = Label(root, text='日期:').grid(row=1, column=0) v1 = StringVar() p1 = StringVar() v1.set(int(time())) Label3 = Label(root, text='日期:').grid(row=3, column=0) Label4 = Label(root, text='時間戳').grid(row=4, column=0) v2 = StringVar() p2 = StringVar() timeArray1 = localtime(int(time())) v2.set(strftime("%Y-%m-%d %H:%M:%S", timeArray1)) p2.set(int(time())) #時間戳轉(zhuǎn)換成日期 def trans1(): e1 = Entry(root, textvariable=v1) # Entry 是 Tkinter 用來接收字符串等輸入的控件. e2 = Entry(root, textvariable=p1) e1.grid(row=0, column=1, padx=10, pady=5) # 設(shè)置輸入框顯示的位置,以及長和寬屬性 e2.grid(row=1, column=1, padx=10, pady=5) timeArray = localtime(int(e1.get())) p1.set(strftime("%Y-%m-%d %H:%M:%S", timeArray)) #日期轉(zhuǎn)換為時間戳 def trans2(): e3 = Entry(root, textvariable=v2) # Entry 是 Tkinter 用來接收字符串等輸入的控件. e4 = Entry(root, textvariable=p2) e3.grid(row=3, column=1, padx=10, pady=5) # 設(shè)置輸入框顯示的位置,以及長和寬屬性 e4.grid(row=4, column=1, padx=10, pady=5) p2.set(int(mktime(strptime(e3.get(), "%Y-%m-%d %H:%M:%S")))) #刷新第二個模組 def refresh(): timeArray1 = localtime(int(time())) v2.set(strftime("%Y-%m-%d %H:%M:%S", timeArray1)) p2.set(int(time())) Button(root, text='轉(zhuǎn)換', width=10, command=trans1) \ .grid(row=2, column=0, sticky=W, padx=10, pady=5) Button(root, text='轉(zhuǎn)換', width=10, command=trans2) \ .grid(row=5, column=0, sticky=W, padx=10, pady=5) Button(root, text='刷新', width=10, command=refresh) \ .grid(row=5, column=1, sticky=W, padx=10, pady=5) Button(root, text='退出', width=10, command=root.quit) \ .grid(row=6, column=1, sticky=E, padx=10, pady=5) trans1() trans2() #設(shè)置窗口初始顯示位置 sw = root.winfo_screenwidth() sh = root.winfo_screenheight() x = (sw) / 2 y = (sh) / 2 root.geometry("+%d+%d" %(x,y)) mainloop()
我一直信奉代碼寫的足夠好不需要額外的太多解釋。請看上面代碼中的注釋
pyinstaller的安裝和使用
安裝
pip install pyinsatller #安裝直接運(yùn)行一下如下命令 pyinstaller #如果能運(yùn)行會提示選項(xiàng)
打包文件
#打包的命令(在命令行中運(yùn)行,如果不成功記得配置好環(huán)境變量) pyinsatller -F -w D:\python\timeTran.py #選項(xiàng)介紹 #-F –onefile 產(chǎn)生一個文件用于部署 (參見XXXXX). #-w,–windowed,–noconsole 使用Windows子系統(tǒng)執(zhí)行.當(dāng)程序啟動的時候不會打開命令行(只對Windows有效) 就是不會顯示一個黑窗口(太丑了,還要手動去關(guān)閉)如果不知道什么意思,可以自己去試試
github地址:https://github.com/VinterHe/timeTransverter (本地下載) 里面有打包好的exe文件可以直接拿去用
生成成功后提示中會有一條INFO: Appending archive to EXE C:\Users\XXX\dist\timeTransverter.exe,里面放著你想要的exe文件。歡迎大家轉(zhuǎn)載和使用,謝謝。
看完了這篇文章,相信你對“利用python制作時間戳轉(zhuǎn)換工具的方法”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,感謝各位的閱讀!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。