凯鲁嘎吉
用书写铭记日常,最迷人的不在远方
posts - 292,comments - 409,views - 138万
回到顶部(go to top)

Python小练习:解决strftime()中国时区乱码问题

作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/

1. mytest.py

复制代码
 1 # -*- coding: utf-8 -*-
 2 # Author:凯鲁嘎吉 Coral Gajic
 3 # https://www.cnblogs.com/kailugaji/
 4 # Python小练习:解决strftime()中国时区乱码问题
 5 import datetime
 6 import dateutil.tz
 7 now = datetime.datetime.now(dateutil.tz.tzlocal())
 8 timestamp = now.strftime('%Y-%m-%d %A %H:%M:%S %Z').encode('latin-1').decode('GBK')
 9 print('方法1:datetime模块 | ', timestamp)
10 # --------------------------------------------------------------------------------------
11 import time
12 timestamp = time.strftime('%Y-%m-%d %A %H:%M:%S %Z').encode('latin-1').decode('GBK')
13 print('方法1:time模块     | ', timestamp)
14 # --------------------------------------------------------------------------------------
15 import time
16 import locale
17 locale.setlocale(locale.LC_ALL, '')
18 timestamp = time.strftime('%Y-%m-%d %A  %H:%M:%S %Z')
19 print('方法2:time模块     | ', timestamp)
20 
21 # %y 两位数的年份表示(00-99)
22 # %Y 四位数的年份表示(000-9999)
23 # %m 月份(01-12)
24 # %d 月内中的一天(0-31)
25 # %H 24小时制小时数(0-23)
26 # %I 12小时制小时数(01-12)
27 # %M 分钟数(00=59)
28 # %S 秒(00-59)
29 # %a 本地简化星期名称
30 # %A 本地完整星期名称
31 # %b 本地简化的月份名称
32 # %B 本地完整的月份名称
33 # %c 本地相应的日期表示和时间表示
34 # %j 年内的一天(001-366)
35 # %p 本地A.M.或P.M.的等价符
36 # %U 一年中的星期数(00-53)星期天为星期的开始
37 # %w 星期(0-6),星期天为星期的开始
38 # %W 一年中的星期数(00-53)星期一为星期的开始
39 # %x 本地相应的日期表示
40 # %X 本地相应的时间表示
41 # %Z 当前时区的名称
复制代码

2. 结果

方法1:datetime模块 |  2023-04-18 Tuesday 18:10:43 中国标准时间
方法1:time模块     |  2023-04-18 Tuesday 18:10:43 中国标准时间
方法2:time模块     |  2023-04-18 星期二  18:10:43 中国标准时间

乱码问题是在Windows下出现的。例如:"中国标准时间"六个汉字成了:"Öйú±ê׼ʱ¼ä"。

如果用Ubuntu,则直接使用如下代码:

1 import datetime
2 import dateutil.tz
3 now = datetime.datetime.now(dateutil.tz.tzlocal())
4 timestamp = now.strftime('%Y-%m-%d %A %H:%M:%S %Z')
5 print(timestamp)

结果:

2023-04-18 Tuesday 18:16:42 CST

其中CST表示中国标准时间(China Standard Time)。

posted on   凯鲁嘎吉  阅读(279)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决

点击右上角即可分享
微信分享提示