Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用datetime.strTime在python中转换日期格式时遇到问题_Python - Fatal编程技术网

使用datetime.strTime在python中转换日期格式时遇到问题

使用datetime.strTime在python中转换日期格式时遇到问题,python,Python,大家好,我有一个这样的代码来计算六个月前的确切日期,但不幸的是它打印的是yy-mm-dd格式,我想要的是dd/mm/yy格式,我该怎么做(我试图转换,但它不起作用)?我的代码怎么了 import datetime six_months = str(datetime.date.today() - datetime.timedelta(6*365/12-1) datetime.datetime.strptime(six_months, '%Y-%m-%d').strftime('%d/%

大家好,我有一个这样的代码来计算六个月前的确切日期,但不幸的是它打印的是yy-mm-dd格式,我想要的是dd/mm/yy格式,我该怎么做(我试图转换,但它不起作用)?我的代码怎么了

  import datetime
  six_months = str(datetime.date.today() - datetime.timedelta(6*365/12-1)
  datetime.datetime.strptime(six_months, '%Y-%m-%d').strftime('%d/%m/%y')
预计产量=2017年2月4日
当前输出=2017-02-04

代码很好,您只是忘记保存到的结果

datetime.datetime.strptime(six_months, '%Y-%m-%d').strftime('%d/%m/%y')

对于任何变量
strtime
不会以任何方式更改调用它的对象,它返回一个字符串

我认为你6个月前的计算算法与现实世界对这个短语的理解不符。从8月4日算起的六个月是2月4日,你的计算给出了正确的答案。但是从9月4日起六个月后是3月4日,你的计算结果是3月7日

代码还不必要地将计算出的日期格式化为字符串,然后必须将字符串解析回日期以获得所需的dd/mm/yy格式

import datetime
from dateutil.relativedelta import *
six_months = datetime.date.today() + relativedelta(months=-6)
print (f"{six_months:%d/%m/%y}")
产量(到明天为止)为


我使用您的命令(复制/粘贴)获得了预期的输出。注意:第二行末尾缺少括号,我也获得了正确的输出。您是否将最后一行的结果赋给了新变量?为什么将减法的结果设为字符串,然后将其解析回datetime对象?我执行您的代码,它的输出很好!哦,这太奇怪了,我该怎么做呢?导入datetime six_months=str(datetime.date.today()-datetime.timedelta(6*365/12-1)a=datetime.datetime.strtime(six_months,%Y-%m-%d')。strftime(“%d/%m/%Y”)出于某些原因它是无效语法无效语法在哪里?
04/02/17