Wie konvertiert Python den Zeitstempel in das Format „12. Juni 2017 18:24'?
欧阳克
欧阳克 2017-06-13 09:24:50
0
2
1146

Wie konvertiert Python den Zeitstempel in das Format „12. Juni 2017 18:24“? Danke

import time
timestamp = 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

Eine weitere Beschwerde: Beim Öffnen von Segmentfault in Chrome wird der Speicherabsturzfehler angezeigt. Wann wird dieser behoben?

欧阳克
欧阳克

温故而知新,可以为师矣。 博客:www.ouyangke.com

Antworte allen(2)
漂亮男人
# coding: utf8
import time
timestamp = time.time() - 3600   # 时间戳
print(time.strftime('%Y{y}%m{m}%d{d} %H{H}%M{M}', time.localtime(timestamp)).format(y='年', m='月', d='日', H='时', M='分'))

女神的闺蜜爱上我

还真被我研究出来种万能方法,据我百度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:

Index Attribute Values
0 tm_year (for example, 1993)
1 tm_mon range [1, 12]
2 tm_mday range [1, 31]
3 tm_hour range [0, 23]
4 tm_min range [0, 59]
5 tm_sec range [0, 61]; see (2) in strftime() description
6 tm_wday range [0, 6], Monday is 0
7 tm_yday range [1, 366]
8 tm_isdst 0, 1 or -1; see below
N/A tm_zone abbreviation of timezone name
N/A tm_gmtoff offset 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 time
print('%s年%s月%s日 %s时%s分' % time.localtime(1497254119.69407)[:5])

输出:

2017年6月12日 15时55分

搞定。

转载请注明出处,谢谢。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage