【帆雨工坊故事】Python笑話
我鬧了個笑話。
為了實現(xiàn)某個動畫的一些效果,需要編個小小的程序,里面有個功能是將日期時間轉(zhuǎn)換為時間戳。
簡單講,就算把字符串“2022年9月29日 21點00分”轉(zhuǎn)換為一個數(shù)字。
這是很簡單的一個功能,幾行代碼就能實現(xiàn)。

使用datetime模塊:
這就可以了,調(diào)試的時候很順利。
然而,實際運行的時候就報錯了:
OSError: [Errno 22] Invalid argument
于是,我就去檢查python的版本、閱讀datetime的文檔等,明明沒錯啊,怎么回事呢?
倒霉的我最后才去檢查timestamp()適用的日期范圍。
在程序中處理的日期是1935年2月10日,而timesstamp()能處理的時間不得早于1970年1月1日。
其實我是知道有這么一個起始的時間的,但我懶得記數(shù)字,又覺得自己應(yīng)該不會去處理過去的時間,因此在大腦的記憶里就用“很早的時間”代替了“1970年1月1日”。
這是一個不規(guī)范的操作,并在若干年后給我?guī)砹寺闊速M了大概1個小時的時間。

timestamp(時間戳)也稱為Unix時間 或 POSIX時間,表示從格林尼治時間1970年1月1日8時0分0秒(不同編程語言略有不同)開始到現(xiàn)在所經(jīng)過的毫秒數(shù)(有的編程語言是秒數(shù))。
標簽: