# 使用python製作時間戳轉換工具
阿新 • • 發佈:2018-12-09
使用python製作時間戳轉換工具
python 時間戳轉日期 日期轉時間戳
前言:作為一個程式設計師一般情況下,json和時間戳是常用的兩個工具,我諮詢過很多個朋友,他們一般都是通過線上工具對json進行格式化,或者查詢時間戳。這個方式也是我之前的使用方式,此種方式不足之處如下: 1.每次開啟過程步驟繁瑣,即使收藏了也要先開啟瀏覽器,然後點選 2.如果開啟的瀏覽器標籤足夠多的話,根本找不到(就是說的我這樣的人) 3.等 後來我發現了hijson這個工具可以本地格式化json後,一直想找一個本地查詢時間戳的小工具。奈何網際網路大神們沒有滿足我的需求。於是我決定自己寫一個。
本文的環境
- python 3.6
- time 庫
- tkinter 庫
可選:可以使用pyinstaller打包成exe檔案執行。程式大小大約8m,執行時記憶體佔用15m左右。
先貼程式碼(因為時間有限,沒有寫的太工整,見諒):
from tkinter import * from time import * ''' 1、這個程式實現時間戳和日期格式的相互轉換。 2、使用grid方法按照表格方式對元件位置進行安排 3、通過Button按鈕進行轉換和重新整理操作。 4、通過Entry來獲取使用者輸入。 ''' root = Tk() root.title('時間戳轉換') root.resizable(0,0)#禁止拉伸 會變醜 # 對變數進行建立,和資料初始化 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())) #時間戳轉換成日期 def trans1(): e1 = Entry(root, textvariable=v1) # Entry 是 Tkinter 用來接收字串等輸入的控制元件. e2 = Entry(root, textvariable=p1) e1.grid(row=0, column=1, padx=10, pady=5) # 設定輸入框顯示的位置,以及長和寬屬性 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)) #日期轉換為時間戳 def trans2(): e3 = Entry(root, textvariable=v2) # Entry 是 Tkinter 用來接收字串等輸入的控制元件. e4 = Entry(root, textvariable=p2) e3.grid(row=3, column=1, padx=10, pady=5) # 設定輸入框顯示的位置,以及長和寬屬性 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='轉換', width=10, command=trans1) \ .grid(row=2, column=0, sticky=W, padx=10, pady=5) Button(root, text='轉換', 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() #設定視窗初始顯示位置 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
#安裝直接執行一下如下命令
pyinstaller
#如果能執行會提示選項
打包檔案
#打包的命令(在命令列中執行,如果不成功記得配置好環境變數) pyinsatller -F -w D:\python\timeTran.py #選項介紹 #-F –onefile 產生一個檔案用於部署 (參見XXXXX). #-w,–windowed,–noconsole 使用Windows子系統執行.當程式啟動的時候不會開啟命令列(只對Windows有效) 就是不會顯示一個黑視窗(太醜了,還要手動去關閉)如果不知道什麼意思,可以自己去試試
這個時候就在同級別目錄下生成一個dist目錄,裡面放著你想要的exe檔案。歡迎大家轉載和使用,謝謝。