【问题标题】:Sort list by suffix按后缀排序列表
【发布时间】:2021-07-15 19:47:41
【问题描述】:

我想学习如何按特定字符串结尾对我的纯文本文件进行排序,在本例中为后缀“ly”:

aback
abaft
abandonedly
abashedly
abeam
abed
abhorrently
... 

从这个列表中提取和/或拆分所有以“ly”结尾的单词,它应该类似于以下内容:

aback
abaft
abeam
abed
...
abandonedly
abashedly
abhorrently

注意:

  • 新列表是否附加到旧列表中并不重要。
  • 我希望我的列表保持按字母顺序排序,如果 可能。

我愿意使用编程语言、命令行或服务。事实是,根据我之前的在线研究,我无法确定哪种方法最有效或最简单地完成这种排序。

【问题讨论】:

    标签: string sorting suffix


    【解决方案1】:

    Python 中的解决方案:

    with open("input.txt", "r") as f_in:
        lines = sorted(map(str.strip, f_in), key=lambda k: (k.endswith("ly"), k))
    
    with open("output.txt", "w") as f_out:
        print("\n".join(lines), file=f_out)
    

    来自input.txt

    aback
    abaft
    abandonedly
    abashedly
    abeam
    abed
    abhorrently
    

    创建output.txt:

    aback
    abaft
    abeam
    abed
    abandonedly
    abashedly
    abhorrently
    

    【讨论】:

      猜你喜欢
      • 2013-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多