Python datetime中%C返回‘20’的原因及输出结果疑问
代码输出解析与格式符说明
先看你执行的代码:
timestamp = time.time() dt = datetime.fromtimestamp(timestamp) dt = dt.strftime("%C%Y%m%d%H%M.%S") dt
为什么会返回20202312240520.14这个结果?
问题出在你叠加使用了%C和%Y两个年份相关的格式符,导致年份部分重复输出。把输出拆解开对应到每个格式符就一目了然:
%C→ 输出20%Y→ 输出2023%m→ 输出12(对应12月)%d→ 输出24(对应24日)%H→ 输出05(对应5点)%M→ 输出20(对应20分).%S→ 输出.14(对应14秒)
把这些结果依次拼接,就得到了20202312240520.14。
输出里第一个20代表什么?
这个20是%C格式符的输出,它的含义是当前年份除以100取整的结果。比如你运行代码时的年份是2023,2023除以100取整就是20,所以%C输出20。
内容的提问来源于stack exchange,提问作者TheHongLou
相关产品推荐
相关产品推荐

