如果您的日期格式可能是可变的,并且基于日期的字符串表示进行排序可能不会产生所需的效果,那么使用其中一个日期时间库(直接或通过pandas)会更准确。
这不是一个单一的班轮,但可能更强大:
a = [["2019-10-13", "2019-10-12", "2019-10-14", "2019-10-11"], [10, 28, 5, 37]]
df = (
pd.DataFrame(a, index=["date", "value"])
.T.astype({"date": "datetime64", "value": "int"})
.sort_values("date")
)
df["date"] = df["date"].apply(lambda x: str(x.date())) # date as strings
output = [list(col) for col in df.T.values]
这会将所需输出作为嵌套列表:
[['2019-10-11', '2019-10-12', '2019-10-13', '2019-10-14'], [37, 28, 10, 5]]