python - 如何更改Python的日期时间格式

标签 python datetime date-formatting data-cleaning pandas-datareader

我有大量的时间序列数据,并且在更改时间约定方面面临问题。

下面是不同的类型,我试图将它们全部变成一种格式。无法找到任何相应的指导。它更像是我正在尝试做的数据预处理/清理过程。这样接下来python和pandas的执行过程就顺利了。手动更改实际上是不可能的,需要使用 python 脚本进行修复。

输入文件有两种类型的 CSV 格式。

三列多行,其中 col[0] 绝对是日期时间,其余是其他数据。列标题不是恒定的,每个输入文件都有一些名称,因此不能使用标题。

09/30/2015 12:00 PM,abcsd,434235
09/30/2015 12:30 PM,taer,45824
09/30/2015 13:00 PM,hshfe,4894

多列多行的输入文件

no.,30-09-2015 12:00 PM,30-09-2015 13:00 PM
1111,2345,2342

类型

1. 09/30/2015 12:00:00 
2. 30/09/2015 12:00
3. 09/30/2015 12:00 PM
4. 30/09/2015 12:00 PM
5. 30-09-2015 12:00:00
6. 30-09-2015 12:00 PM

上面列出的是类型,我想将它们全部转换为一种格式:

1. 30/09/2015 12:00

or 

2. 09/30/2015 12:00

我也无法在文档中找到正确的指导。所以到目前为止无法尝试任何代码。

感谢您提出的宝贵建议

最佳答案

您需要将它们全部读入一个共同的datetime对象,然后从该对象中将它们全部打印出来。

不幸的是,以多种格式阅读的最佳方法是列出可能的格式,然后尝试使用每种格式。

例如:

import datetime

POSSIBLE_FORMATS = ['%h%m%s', ...]

for date in dates:
    for format in POSSIBLE_FORMATS:
        try:
            formatted = datetime.strptime(date, format)
            print formatted # will be the same format every time
            break # found it, stop trying formats
        except:
            pass # wrong format, keep trying formats

关于python - 如何更改Python的日期时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32859436/

相关文章:

java - 谷歌日历 API : Event endTime is decremented by 1 day

javascript - Intl.DateTimeFormat 选项散列 : Getting leading zeros with '2-digit'

javascript - 使用包含英国格式日期的字符串设置 new Date()

python - mypy "Optional[Dict[Any, Any]]"在标准过滤器、映射中不可索引

python - VPython 继承

java - 如何使用 JPA 和 Hibernate 在 UTC 时区存储日期/时间和时间戳

sql-server - SSIS 导入 Excel 日期时出错(截断错误)

datetime - ios 上日期时间格式的语言与语言环境

python - 运行 OpenSSL 系统调用

python - 计算json数据每小时的平均值