strftime函数

询问,这个运行出来的时间怎么和正常时间不一样…就是小时不一样,其他都没问题。不知道哪错了,怎么修改呢,谢谢大家

img

应该是因为gmtime() 函数将一个时间戳转换为UTC时区(0时区)的struct_time(参考自下面的链接),而不是当前时区的日期时间;获取python获取当前系统时间,可以通过Python中的datetime模块来实现。(参考自下面的链接)。代码修改如下:
参考链接:
Python time gmtime()方法 | 菜鸟教程
https://www.jb51.net/article/248438.htm

import datetime
from time import strftime

now=datetime.datetime.now()
print(now.strftime("%Y-%m-%d  %H:%M:%S 星期%w"))


img

time.gmtime()返回的是格林尼治时间(零时区),time.localtime()才是本地时间。

>>> import time
>>> t = time.localtime()
>>> time.strftime("%Y-%m-%d %X 星期%w", t)
'2022-08-20 17:04:22 星期6'