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

如何从txt文档中提取括号分隔的多个数字并存入Python列表

实现方案

用Python标准库的re正则模块配合列表推导式即可实现,代码简洁且符合Python最佳实践:

完整代码

import re

# 读取本地txt文件并提取ID
with open("你的文件路径.txt", "r", encoding="utf-8") as f:
    file_content = f.read()

# 提取所有方括号内的数字并转为整型
id_list = [int(num) for num in re.findall(r"\[(\d+)\]", file_content)]

说明

  • 使用with上下文管理器处理文件读取,无需手动调用close()方法关闭文件,是Python官方推荐的文件操作写法
  • 正则表达式r"\[(\d+)\]"中:
    • \[和\]是转义字符,匹配字面量的方括号
    • (\d+)是捕获组,匹配方括号内的连续数字,re.findall方法会直接返回所有捕获组匹配到的字符串列表
  • 列表推导式将所有字符串格式的数字批量转为整型,一步得到目标列表

精准匹配优化

如果你需要避免其他位置方括号内的数字被误提取(比如前面[some_strings]中如果存在数字的场景),可以调整正则规则,只匹配id:后面的方括号内容:

id_list = [int(num) for num in re.findall(r"id:\[(\d+)\]", file_content)]

运行后得到的id_list就是你需要的[1227194, 1227195, 1227196]。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 12:45:03