您的位置:首頁技術文章
文章詳情頁

python如何轉換時間戳到"2017年6月12日 18點24分"這樣的格式呢?

瀏覽:106日期:2022-06-28 15:11:54

問題描述

python如何轉換時間戳到'2017年6月12日 18點24分'這樣的格式呢?謝謝

import timetimestamp = time.time()time.strftime(’%Y年%m月%d日 %H時%M分’, time.localtime(timestamp))Traceback (most recent call last): File '<input>', line 1, in <module>UnicodeEncodeError: ’locale’ codec can’t encode character ’u5e74’ in position 2: Illegal byte sequence

另外吐槽下,chrome下打開segmentfault顯示內存用完崩潰的錯誤到底什么時候修啊啊啊啊啊??!

問題解答

回答1:

# coding: utf8import timetimestamp = time.time() - 3600 # 時間戳print(time.strftime(’%Y{y}%m{m}%dljuzbdr %H{H}%M{M}’, time.localtime(timestamp)).format(y=’年’, m=’月’, d=’日’, H=’時’, M=’分’))回答2:

還真被我研究出來種萬能方法,據我百度Google貌似這還是世上獨一份?

話不多說,下面上解決原理及方案:

官方文檔:https://docs.python.org/3/lib...

class time.`struct_time`?

The type of the time value sequence returned by gmtime(), localtime(), and strptime(). It is an object with a named tuple interface: values can be accessed by index and by attribute name. The following values are present:

IndexAttributeValues0tm_year(for example, 1993)1tm_monrange [1, 12]2tm_mdayrange [1, 31]3tm_hourrange [0, 23]4tm_minrange [0, 59]5tm_secrange [0, 61]; see (2) in strftime() description6tm_wdayrange [0, 6], Monday is 07tm_ydayrange [1, 366]8tm_isdst0, 1 or -1; see belowN/Atm_zoneabbreviation of timezone nameN/Atm_gmtoffoffset east of UTC in seconds

Note that unlike the C structure, the month value is a range of [1, 12], not [0, 11].In calls to mktime(), tm_isdst may be set to 1 when daylight savings time is in effect, and 0 when it is not. A value of -1 indicates that this is not known, and will usually result in the correct state being filled in.When a tuple with an incorrect length is passed to a function expecting a struct_time, or having elements of the wrong type, a TypeError is raised.

看文檔可以得知time.localtime()返回的元組結構,我要用到的是年月日時分,前5個,于是乎,代碼:

import timeprint(’%s年%s月%s日 %s時%s分’ % time.localtime(1497254119.69407)[:5])

輸出:

2017年6月12日 15時55分

搞定。

轉載請注明出處,謝謝。

標簽: Python 編程
相關文章:
国产综合久久一区二区三区