Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.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 如何从datetime获取日期?_Python_Date_Xls_Python Datetime - Fatal编程技术网

Python 如何从datetime获取日期?

Python 如何从datetime获取日期?,python,date,xls,python-datetime,Python,Date,Xls,Python Datetime,我在.XLS文件中有以下格式的日期时间信息,例如。 3月15日至21日01.32.50.395000下午 我需要将这个时间戳转换为日期对象(并在新列中更新它)。如何从这个datetime对象获取日期 更新:这是我的解决方案 from datetime import datetime datetime_str = '15-MAR-21 01.32.50.395000 PM' datetime_object = datetime.strptime(datetime_str, '%d-%b-%y

我在.XLS文件中有以下格式的日期时间信息,例如。 3月15日至21日01.32.50.395000下午

我需要将这个时间戳转换为日期对象(并在新列中更新它)。如何从这个datetime对象获取日期

更新:这是我的解决方案

from datetime import datetime

datetime_str = '15-MAR-21 01.32.50.395000 PM'

datetime_object = datetime.strptime(datetime_str, '%d-%b-%y %H.%M.%S.%f %p')

print(type(datetime_object))
print(datetime_object)  # printed in default format

print(datetime_object.date())

有更好的解决方案吗?

您可以简单地导入datetime库,然后使用datetime.datetime.date()方法执行此操作,前提是您的文件名为
date\u file.xlsx
,并且包含日期的列名为
date

将熊猫作为pd导入
导入日期时间
df=pd.read\u excel(
“date_file.xlsx”,
转换器={
“日期”:lambda x:datetime.datetime.strtime(x,“%d-%b-%y%I.%M.%S.%f%p”).DATE()
},
engine='openpyxl',
)
df
DATE
列将包含所有转换的日期。如果您喜欢使用
datetime.datetime
对象,请从解析函数中删除
.date()


在您的示例中,
15-MAR-21 01.32.50.395000 PM
将转换为
2021-03-15
,如果删除
.date()
,则将转换为
2021-03-15 13:32:50.395
,阅读datetime.strTime文档,这些文档告诉您如何执行此操作。如果您有问题,请在此处发布您如何尝试使用它。@576谢谢您的输入,我刚刚发布了一个解决方案。请您看看您有什么是最好的解决方案。要分析的字符串中有一个错误
datetime\u str
:您应该用
%I
更改
%H
,假设您使用的是
AM
PM
。但是,这不应影响
date()
的结果;您的代码段在导入时转换(并且不更新xls文件)