Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.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
Python 仅返回天数的日期时间差?_Python_Regex_Datetime - Fatal编程技术网

Python 仅返回天数的日期时间差?

Python 仅返回天数的日期时间差?,python,regex,datetime,Python,Regex,Datetime,如果没有正则表达式代码的味道,我怎么能只得到几天?问题升级,因为我需要在许多位置使用索引。所以有更干净的方法吗?不要这么快就使用str()。从另一个日期时间中减去一个后得到的结果是一个对象,它有一个.days属性,可以读取 $ cat .t.py import re from datetime import datetime as dtt oldestDate = dateComp = dtt.strptime('1.1.1001', '%d.%m.%Y') dateComp = dtt.s

如果没有正则表达式代码的味道,我怎么能只得到几天?问题升级,因为我需要在许多位置使用索引。所以有更干净的方法吗?

不要这么快就使用
str()。从另一个
日期时间
中减去一个后得到的结果是一个对象,它有一个
.days
属性,可以读取

$ cat .t.py 
import re
from datetime import datetime as dtt

oldestDate = dateComp = dtt.strptime('1.1.1001', '%d.%m.%Y')
dateComp = dtt.strptime('11.1.2011', '%d.%m.%Y')
ind = re.sub(" days,.*", "", str((dateComp - oldestDate)))

print ind
print dateComp - oldestDate
$ python .t.py 
368905
368905 days, 0:00:00
请注意,仅读取
.days
属性意味着它将对差值进行四舍五入-如果您想取整到最接近的天数,则需要添加一些逻辑来检查
.seconds
属性,以查看它是否接近0或86400

(dateComp - oldestDate).days