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

Python读取TXT文件并查找出现频率最高的3组7位数字序列

解决方案

核心逻辑

不需要提前对行内容排序,直接提取所有连续7位数字组合全局统计频率即可,步骤如下:

  • 逐行读取文本,去除每行的换行符、分隔符等无效字符,得到17位连续数字字符串
  • 对每个17位字符串滑动提取所有连续7位子串:第1-7位、第2-8位…第11-17位,每行共生成11个7位序列
  • 用字典统计所有序列的出现次数
  • 按统计值倒序排序,取前3个结果

可直接运行的Python实现

from collections import defaultdict

seq_counter = defaultdict(int)
# 替换为你的实际文件路径
file_path = "your_file.txt"

with open(file_path, "r", encoding="utf-8") as f:
    for line in f:
        # 去除空白、分隔符,仅保留数字
        digit_line = line.strip().replace(" ", "").replace(",", "")
        # 跳过长度异常的行
        if len(digit_line) != 17:
            continue
        # 滑动提取7位序列
        for idx in range(11):
            current_seq = digit_line[idx:idx+7]
            seq_counter[current_seq] += 1

# 取频率最高的3组
top3_seqs = sorted(seq_counter.items(), key=lambda x: x[1], reverse=True)[:3]

# 输出结果
print("频率Top3的7位数字序列:")
for seq, cnt in top3_seqs:
    print(f"序列:{seq},出现次数:{cnt}")

补充说明

3883行的数据量极小,上述方案运行速度极快,无需额外优化。如果你的数字有其他分隔符,调整digit_line对应的字符替换规则即可。


内容的提问来源于stack exchange,提问作者ליאור כהן

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 05:36:01