当我dateutil.parser用来解析错过了一天的不完整日期时,10由于某种原因,我将日期设置为:
from dateutil.parser import parse
>>> d1 = parse('2008 Apr 2')
>>> d1
datetime.datetime(2008, 4, 2, 0, 0)
>>> d2 = parse('2014 Apr')
>>> d2
datetime.datetime(2014, 4, 10, 0, 0)
Run Code Online (Sandbox Code Playgroud)
有没有办法改变这一点,以便将这一天自动设置1为这样的不完整案例?
这是我的数据
Customer_id Date-of-birth
1 1992-07-02
2 1991-07-03
Run Code Online (Sandbox Code Playgroud)
这是我的代码
import datetime as dt
df['now'] = dt.datetime.now()
df['age'] = df['now'].dt.date - df['Date-of-birth']
Run Code Online (Sandbox Code Playgroud)
这是结果
Customer_id Date-of-birth age
1 1992-07-02 xxxx days
2 1991-07-03 xxxx days
Run Code Online (Sandbox Code Playgroud)
我想要的结果是
Customer_id Date-of-birth age
1 1992-07-02 26 years 22 days
2 1991-07-03 27 years 21 days
Run Code Online (Sandbox Code Playgroud)
只是让你现在,通过df.dtypes,Date-of-birth是一个对象,因为是基于下拉客户输入
我怎样才能做到这一点?我希望这个问题足够清楚
我正在使用python3开发一个项目,其中我必须使用一个api,并且需要获取日期范围内某个星期中特定日期的数据。
因此,示例输入参数为:
firstDay = '1-January-2000'
lastDay = '22-february-2000'
weekDay = 'Monday'
Run Code Online (Sandbox Code Playgroud)
因此,日期将包含在API响应中,但是当天没有任何信息。因此,我必须获取特定日期的所有日期,例如Monday日期范围之间的日期。
根据上面的示例,如何获取和Mondays之间的所有日期?firstDaylastDay
我正在尝试将string类型的参数转换为日期时间.我正在使用dateUtil库
from dateutil import parser
myDate_string="2001/9/1 12:00:03"
dt = parser.parse(myDate_string,dayfirst=True)
print dt
Run Code Online (Sandbox Code Playgroud)
每次我跑这个我得到
2001-09-01 12:00:03
无论我将dayfirst设置为true还是将year first设置为false.理想情况下,我只想要以DD-MM-YYYY HH:MM:SS格式的日期.我不想要任何幻想.我愿意使用datetime库,但这对我来说似乎根本不起作用.任何人都可以给出如何使用显式格式将字符串转换为日期时间的简单示例,我是一个菜鸟,所以最基本的例子都是我需要的.我正在使用Python 2.7
这是我的方法
def get_remaining_days_in_financial_month(self, from_day):
current_financial_day = date(from_day.year, from_day.month,
self.financial_day_of_month)
end_financial_month = current_financial_day + relativedelta(months=+1)
delta = relativedelta(end_financial_month, from_day)
remaining_days_in_financial_month = delta.days
return remaining_days_in_financial_month
Run Code Online (Sandbox Code Playgroud)
当我调试时,我明白了
current_financial_day = 2013-06-01
delta = relativedelta(months=+1)
end_financial_month = 2013-07-01
from_day = 2013-06-01
remaining_days_in_financial_month = 0
Run Code Online (Sandbox Code Playgroud)
虽然这些信息是正确的,但我想知道它的数量days,因为天数从282 30月份变为6月份和318月份
我怎样才能做到这一点?该dateutil库不提供一种方式,似乎
谢谢
我是Python的新手.有人可以建议我如何处理错误"ImportError: matplotlib requires dateutil".我已经通过类似的问题,但我已经按照那里提到的步骤和下载文件夹并在site-packages文件夹中更新它,其中matplotlib文件夹也在那里.
但我仍然得到这个错误.有人可以建议我解决这个问题.在此先感谢您的支持.
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
import matplotlib.pyplot as plt
File "C:\Python32\lib\site-packages\matplotlib\__init__.py", line 112, in <module>
raise ImportError("matplotlib requires dateutil")
ImportError: matplotlib requires dateutil
Run Code Online (Sandbox Code Playgroud)
这是我得到的确切错误.
我使用Python和'dateutil'包.我有两个日期'date1'和'date2'从一些字符串解析:
import dateutil.parser
date1 = dateutil.parser.parse(string1,fuzzy=True)
date2 = dateutil.parser.parse(string2,fuzzy=True)
Run Code Online (Sandbox Code Playgroud)
如何在'date1'和'date2'之间获得绝对(非负)时间差(以秒为单位)?只有一个数字.
我dateutil在~/.local/lib/python2.7/site-packages目录中有一个 python 包,在/usr/lib/python2.7/dist-packages/dateutil. 当我尝试从kalibr(一种相机校准工具,我下载了 CDE)运行可执行文件时,rrule.py从dateutil包中~/.local/lib/python2.7/site-packages抛出错误“ImportError: No module named fractions”。通过删除所述dateutil包(它使用 中的包),我可以让 kalibr 运行,/usr/lib/python2.7/dist-packages/dateutil但我担心这会对其他项目产生一些影响。
所以我想,基本的问题就在这里是蟒蛇喜欢的dateutil包~/.local/lib/python2.7/site-packages过那个在/usr/lib/python2.7/dist-packages/dateutil。
我怎样才能让python更喜欢后者?
(我使用的是 Ubuntu 16.04)
我需要经常在字符串和日期时间对象之间进行转换 - 到目前为止我一直使用 strptime 和 strftime。我开始使用谷歌日历 API,我收到这样的字符串: '2018-03-17T09:00:00+01:00
看来我需要将 strptime 的 +01:00 转换为 0100,这有点烦人。虽然我的 dateutil 没有这个问题,但还有一些其他不便。我还看到 dateutil 的最后一次更新是在 2016 年,这看起来很奇怪。
所以我的问题是,您会推荐哪一个来添加和减去日期和日期时间以及在字符串和日期时间对象之间切换?另外 dateutil 是否仍然维护或者已经过时了?
多谢!- 莎莉
是否有任何简单的方法,如何确定日期时间对象中的日期是否不明确 - 这意味着特定的日期时间可以按常规时间更改的顺序在特定时区中存在两次?
\n\n这是一个不明确的日期时间对象的示例。在纽约时区,2017 年 11 月 5 日凌晨 2 点,时间拨回凌晨 1 点。
\n\nimport datetime\nimport dateutil\n\n#\xc2\xa0definition of time zone\neastern_time = dateutil.tz.gettz('America/New_York')\n\n# definition of ambiguous datetime object\ndt = datetime.datetime(2017, 11, 5, 1, 30, 0, tzinfo=eastern_time)\nRun Code Online (Sandbox Code Playgroud)\n\n我期待这样的事情。
\n\n>>> suggested_module.is_dt_ambiguous(dt)\nTrue\nRun Code Online (Sandbox Code Playgroud)\n python ×10
python-dateutil ×10
date ×2
datetime ×2
python-2.7 ×2
matplotlib ×1
pandas ×1
pyodbc ×1
python-3.x ×1
timezone ×1
ubuntu ×1