- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在寻找一种方法来按优先顺序使用以下“元格式”来解析未知格式的日期:
这是挪威、丹麦、芬兰和荷兰几乎所有发票上实际使用的元格式,因此它应该是一个常见的用例。然而,似乎没有一个库能够处理它而无需定义大量可能的格式。
具体来说。我需要一个方法 (parse
) 来满足以下条件:
parse("01-02-03") == "datetime.datetime(2003, 2, 1, 0, 0)"
parse("2003-02-01") == "datetime.datetime(2003, 2, 1, 0, 0)"
但它也应该适用于其他分隔符等。
关于如何在不定义大量格式列表的情况下实现这一点有什么建议吗?
编辑:由于瑞典有不同的偏好,我更喜欢一个可以概括的答案,以适用于 YMD 优于 DMY 的情况。
最佳答案
您是否尝试过使用 pandas
?恕我直言,这是导入日期的最佳和最简洁的方法,因为它在 99% 的时间内开箱即用,而 dateutil 等大多数其他东西往往会失败。
import pandas as pd
pd.to_datetime('01-02-03', dayfirst=True)
pd.to_datetime('2003-02-01', dayfirst=True)
pandas 的另一个优势是它可以处理数组、列表和大多数其他类型,甚至支持使用 datetime-index 对数组(称为 DataFrame)进行字符串索引。
有关如何使用 pandas 获取 datetime.datetime
格式的更多信息:
只需将 .to_pydatetime()
附加到您的解析器即可。
pd.to_datetime('2003-02-01', dayfirst=True).to_pydatetime()
# Out[]: datetime.datetime(2003, 2, 1, 0, 0)
关于python - 使用 Python 解析北欧格式日期(首先是 DMY,然后是 YMD)的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50249371/
我得到了一个里面有一堆日期的文件。它们是十六进制格式,我听说它是 YMD。 例子是:4A273F ..知道我将如何转换它吗?理想化使用 SQL/PLSQL,但我对其他想法持开放态度。 谢谢! 最佳
有人可以帮我将默认系统日期从 ymd 更改为 dmy 吗?这些必须始终是默认格式!怎么办? 最佳答案 SET DATEFORMAT: Sets the order of the month, day,
我正在创建一个表单,用户可以在其中使用 3 个 UITextField 输入生日:1 个代表月份,1 个代表日期,1 个代表年份。我想根据用户的日期格式来排列它们。 即:美国用户为 [ MONTH ]
用这段代码获取ymd: var ymd = '20190716'; var year = ymd.substring(0, 4); var month = ymd.substring(4, 2); v
例如,我的日期为:20171208181856.0Z,我想使用 java 将其转换为日期时间格式。我似乎没有找到任何可行的解决方案。 最佳答案 您可以创建 DateTimeFormatter使用输入格
在 .NET 方面休息了很长时间后,我又花了一些时间在 Java 上。我遇到了这段代码: Date date = new Date(Date.UTC(y - 1900, m - 1, d, h, M,
MySQL DATE_FORMAT 返回空值 SELECT DATE_FORMAT( 'stmt_for', '%Y%m%d' ) FROM `edu_daily_statements` ; 当
我正在寻找一种方法来按优先顺序使用以下“元格式”来解析未知格式的日期: 日-月-年 (DMY) 年-月-日 (YMD) 可能是其他格式(但这并不重要) 这是挪威、丹麦、芬兰和荷兰几乎所有发票上实际使用
我是一名优秀的程序员,十分优秀!