如何用Python定义一个函数,其参数为时间?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用Python定义一个函数,其参数为时间?相关的知识,希望对你有一定的参考价值。
就是def fun(time1,time2);time1、time2的格式如yyyy-mm-dd hh:mm:ss。
参考技术A import timedef abc(a = time.time):
return a 参考技术B 参数为什么不重要啊,只要函数语句块中调用的时候当时间用它就是时间啊追问
比如 def fun(a,b)
print b-a
我调用的时候可以fun(1,3),会得到2;
但我若fun(2014-7-10 08:53:21,2014-2-14 08:21:12),这样python会报错的。
格式化一下,因为直接输入python当做字符创处理了:
datetime.datetime.strptime(a, '%Y-%m-%d %H:%M:%S')
datetime.datetime.strptime(b, '%Y-%m-%d %H:%M:%S')
如何将字符串转换为时间,使其具有时区意识,并在 Python 中转换时区?
【中文标题】如何将字符串转换为时间,使其具有时区意识,并在 Python 中转换时区?【英文标题】:How to convert a string to a time, make it time-zone aware, and convert the timezone in Python? 【发布时间】:2021-05-06 19:02:25 【问题描述】:我有一个名为“状态日期”的列,其中包含数千个日期,格式如下:
Status Date
01/04/2021-12:21:36
在模式中:
m/d/Y-H:M:S
我需要将此列的所有元素转换为 UTC 中的时区感知 DateTime 对象,然后将时间转换为 UTC-0600(美国/芝加哥)。我试图自己用这个来修复它:
merged['Status Date'] = pd.to_datetime(merged['Status Date'], errors='coerce')
merged['Status Date'] = merged['Status Date'].dt.tz_localize('utc').dt.tz_convert('America/Chicago')
但是,这会忽略我拥有的日期格式并且不会一次读取,而是将所有内容转换为 00:00:00,然后转换为 18:00:00-06:00。当我运行它时,我得到这个输出:
2021-01-03 18:00:00-06:00
忽略时间并将一切从 00:00:00 推迟 6 小时。
任何帮助将不胜感激,我觉得我很接近了。
【问题讨论】:
解析日期时间字符串格式对我来说是开箱即用的;测试pd.Series(pd.to_datetime(["01/04/2021-12:21:36"], utc=True)).dt.tz_convert('America/Chicago')
【参考方案1】:
在您的 to_datetime()
创作中试试这个
merged['Status Date'] = pd.to_datetime(merged['Status Date'],
errors='coerce', format='m/d/Y-H:M:S')
【讨论】:
设置一个特定的格式和 errors=coerce 如果这是一个解析问题会有所帮助,例如,如果有不正确的 H:M:S。以上是关于如何用Python定义一个函数,其参数为时间?的主要内容,如果未能解决你的问题,请参考以下文章
C语言中如何用名字存数组,用时间函数模拟随机,实现随机输出一个姓名。
pandas使用to_datetime函数将时间字符串转化为时间对象format参数定义输入时间字符串的格式(format=‘%m/%d/%Y %H:%M‘)