我可以找到该模块https://pypi.python.org/pypi/DateTime
但我不知道通过 easy_install 安装的命令。我收到no module named datetime错误,所以我需要安装它。
我可以在 python 中编写什么函数来确定 的日期是否f大于t,忽略日期部分 - 它显然是?
t = datetime.date(2014, 12, 30)
f = datetime.date(2015, 1 ,2)
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法:
if t.month > f.month:
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用,因为它没有考虑年份。我只想使用年份和月份,而不是日期。
请注意,“t”也可能是datetime.datetime(2015, 2, 2)
我想绘制一些日期时间,并想指定一个时间间隔,以便将它们捆绑在一起并制作直方图。例如,如果一小时内恰好有 n 个日期时间,请将它们组合在一起或将它们解析为年、月、日、小时。并省略分钟和秒。假设我有一个包含一些日期时间值的数据框:
import pandas as pd
import numpy as np
from datetime import datetime, timedelta
date_today = datetime.now()
days = pd.date_range(date_today, date_today + timedelta(7), freq='D')
np.random.seed(seed=1111)
data = np.random.randint(1, high=100, size=len(days))
df = pd.DataFrame({'test': days, 'col2': data})
df = df.set_index('test')
print(df)
2018-06-19 17:10:32.076646 29
2018-06-20 17:10:32.076646 56
2018-06-21 17:10:32.076646 82
2018-06-22 17:10:32.076646 13
2018-06-23 17:10:32.076646 35
2018-06-24 17:10:32.076646 53
2018-06-25 17:10:32.076646 25
2018-06-26 17:10:32.076646 23
Run Code Online (Sandbox Code Playgroud)
理想情况下,我想指定一个更灵活的时间间隔,例如“6小时”,以便对日期时间进行某种模运算。这可能吗?
我试图通过递归迭代它的键来将字典中的特定日期时间值更改为字符串。
from copy import deepcopy
def datetoStr2(datadict):
if 'dict' in str(type(datadict)):
newdict = dict()
newdict.update(datadict)
for key in datadict:
if isinstance(datadict[key], dict):
newdict[key] = datetoStr(datadict[key])
if isinstance(datadict[key], list):
mylist = datadict[key]
for element in mylist:
element = datetoStr(element)
if isinstance(datadict[key], datetime):
#newdict[key] = datadict[key].strftime('%Y-%m-%d %H:%M:%S.%f%z')
newdict[key] = str(datadict[key])
return newdict
else:
return datadict
Run Code Online (Sandbox Code Playgroud)
然而,当我跑步时
some_dict = datetoStr(mydict)
Run Code Online (Sandbox Code Playgroud)
我仍然在原处保留日期时间对象。我究竟做错了什么?
编辑:更新了功能代码。
编写此函数是因为该字典是通过 Flask 的 jsonify 传递的,该 jsonify 目前会删除时区信息并将其替换为 GMT。(计划在下次更新中修复此问题)。
我已经更新了我的函数并记住了一些反馈,但我仍然无法产生结果。
我还添加了一些示例数据和我的输出。
结果:
代码中插入的快速打印告诉我日期时间仍然是日期时间,并且 TZinfo 被 jsonify 删除。
样本数据:
{'data': {'all': {'count': 2, …Run Code Online (Sandbox Code Playgroud) 我尝试了这个,但收到错误month must be in 1..12:
today_date = date.today()
# ERROR - month value becomes -1 here instead of 12
previous_month_4_start_date = today_date.replace(month=today_date.month - 4, day=1)
Run Code Online (Sandbox Code Playgroud)
我可以编写一些样板代码来解决这个问题,但寻找一种有效的方法,其中 ifmonth是-1or-2或-3or -4then 应该分别替换为12or11或10or 9。
请帮忙
编辑
感谢您帮助处理月份,如何处理年份部分,因为它也会从2020变为2019?请帮忙
我想以分钟为单位获取当前时间。我在网上找到了这段代码:
import datetime
start = datetime.datetime(2009, 1, 31)
end = datetime.datetime(2009, 2, 1)
diff = end-start
print (diff.days * 1440) + (diff.seconds / 60)
>> 1440.0
Run Code Online (Sandbox Code Playgroud)
我不确定如何使用该datetime.now()函数来执行此操作并获取当前时间。
如果我将 datetime.now() 设置为一个变量,然后将其设置为另一个变量,然后比较它们,我可以比较时间。
我使用 django simple-history 来获取模型的历史记录,然后按日期搜索历史记录结果,但出现以下错误。如何设置日期格式?
RuntimeWarning: DateTimeField HistoricalIssue.history_date received a naive datetime (2022-04-13 10:34:32) while time zone support is active.
warnings.warn("DateTimeField %s received a naive datetime (%s)"
def SearchByDate(request):
date_search = request.POST['date-search']
if date_search:
admin_hist_search_results = Issue.history.filter(history_date=date_search)
Run Code Online (Sandbox Code Playgroud) 我在 sklearn 随机森林分类器的帮助下编写了这些代码,用于在某些数据集上进行预测和测试准确性。
代码
a = datetime.datetime.now()
y_pred=clf.predict(X_test)
b = datetime.datetime.now()
rf_time = b-a
rf_ac = metrics.accuracy_score(y_test, y_pred)
print(type(rf_time))
print('Random Forest Time Duration - ',b-a)
print("Random Forest Accuracy:",metrics.accuracy_score(y_test, y_pred))
Run Code Online (Sandbox Code Playgroud)
输出
<class 'datetime.timedelta'>
Random Forest Time Duration - 0:00:00.011969
Random Forest Accuracy: 0.6324761904761905
Run Code Online (Sandbox Code Playgroud)
在这里我得到了rf_time哪种类型datetime.timedelta。现在,我怎样才能将其转换datetime.timedelta为整数。如何从 中获取 int 值0:00:00.011969?
我试图根据时间戳列表确定它是白天还是晚上.如果我只检查上午7:00到下午6:00之间的小时将其归类为"日",否则"夜晚",这是否正确?就像我在下面的代码中所做的那样.我不确定这一点,因为有时甚至在下午6点之后这一天,那么使用python来区分白天或黑夜的准确方法是什么?
sample data: (timezone= utc/zulutime)
timestamps = ['2015-03-25 21:15:00', '2015-06-27 18:24:00', '2015-06-27 18:22:00', '2015-06-27 18:21:00', '2015-07-07 07:53:00']
Code:
for timestamp in timestamps:
time = datetime.datetime.strptime(timestamp, "%Y-%m-%d %H:%M:%S")
hr, mi = (time.hour, time.minute)
if hr>=7 and hr<18: print ("daylight")
else: print ("evening or night")
sample output:
evening or night
evening or night
evening or night
evening or night
daylight
Run Code Online (Sandbox Code Playgroud) 如何将日期时间格式化为mm-dd-yy hh:mm:ss?我用下面的代码做到了:
import datetime
t = datetime.datetime.now()
s = str(format(t.second, '02d'))
m = str(format(t.minute, '02d'))
h = str(format(t.hour, '02d'))
d = str(format(t.day, '02d'))
mon = str(format(t.month, '02d'))
y = str(t.year)
x = '-'
z = ':'
print(mon + x + d + x + y + ' ' + h + z + m + z + s)
Run Code Online (Sandbox Code Playgroud)
但是问题是,首先,年份以YYYY而不是YY打印(我只想要年份的最后两位数字)。第二,我确定有一种更简单的方法可以在mm-dd-yy hh:mm:ss中打印日期时间,而不是像我一样手动进行。请帮忙。谢谢。
python-datetime ×10
python ×9
datetime ×6
python-3.x ×4
date ×2
pandas ×2
django ×1
easy-install ×1