python - 按前 N 个字符对字符串进行排序

标签 python string sorting

我有一个包含如下行的文本文件:

2010-02-18 11:46:46.1287 bla
2010-02-18 11:46:46.1333 foo
2010-02-18 11:46:46.1333 bar
2010-02-18 11:46:46.1467 bla

一个简单的排序会交换第 2 行和第 3 行(bar 在 foo 之前),但我想保持行(具有相同日期/时间)的原始顺序。

我如何在 Python 中执行此操作?

最佳答案

sorted(array, key=lambda x:x[:24])

例子:

>>> a = ["wxyz", "abce", "abcd", "bcde"]
>>> sorted(a)
['abcd', 'abce', 'bcde', 'wxyz']
>>> sorted(a, key=lambda x:x[:3])
['abce', 'abcd', 'bcde', 'wxyz']

关于python - 按前 N 个字符对字符串进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2289870/

相关文章:

java - 字符串无法转换为(类名数据类型)Java

python - 使用 natsort 对字典列表进行排序以获得自然排序顺序

python - BeautifulSoup 使用 POST 表单操作解析 html 时遇到问题

python - pandas dataframe 根据另一列值的范围插入值

python - Django 2.0 与关键字参数 uidb64 的 NoReverseMatch

python - 使用 Plotly Python 将 X 轴置于 Y 坐标 0

c - 关于如何创建一个接受字符串并返回带有日期和时间的字符串的 C 函数的想法

python - 将字符串的所有值更改为某个值

php - 排序desc后mysql中的下一条和上一条记录

json - LibreOffice Calc 是否支持 JSON 文件导入/排序?