You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python提取文本中最长的5个单词并按字母顺序排序

实现步骤
  • 第一步:清洗原始文本,移除标点符号,拆分得到独立单词列表,可根据需求选择是否对单词去重
  • 第二步:以单词长度为 key 倒序排序,提取前5个长度最长的单词
  • 第三步:对提取到的5个单词按字母顺序排序
  • 第四步:输出最终结果
可直接运行的示例代码
import string

# 替换为你自己的原始文本即可
raw_text = """Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. Python is dynamically typed and garbage-collected. It supports structured, object-oriented and functional programming paradigms."""

# 移除文本中所有标点符号
translator = str.maketrans('', '', string.punctuation)
clean_text = raw_text.translate(translator)
# 拆分得到单词列表
words = clean_text.split()

# 可选步骤:如果需要排除重复单词,取消注释下面一行
# words = list(set(words))

# 按单词长度倒序排序,长度相同则按字母顺序预排序
sorted_by_length = sorted(words, key=lambda x: (-len(x), x))
# 取最长的前5个单词
top5_longest = sorted_by_length[:5]
# 按字母顺序排序
result = sorted(top5_longest)
# 若需要不区分大小写的字母排序,替换为下面这行
# result = sorted(top5_longest, key=str.lower)

print(result)
关键逻辑说明
  • 文本清洗使用了string.punctuation内置标点集,可以一次性移除所有常见标点,避免标点附着在单词上影响长度计算
  • 第一次排序的key用-len(x)实现长度倒序,无需设置reverse=True,同时可以在长度相同时按字母顺序排列,避免排序结果混乱
  • 若提取的单词总数不足5个,切片操作[:5]会自动返回全部单词,不会抛出异常

内容的提问来源于stack exchange,提问作者clarkens

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 19:06:03