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

读取文本文件并拆分数字的技术实现问题

解决读取文本文件中单独数字的问题

嘿,我来帮你搞定这个问题~你原来用splitlines()得到的是按行分割的列表,所以每行的数字会被当成一个整体字符串,自然没法单独调用每个数字。下面给你两种简单有效的实现方法:

方法一:用split()分割所有空白字符

split()方法默认会把所有空白字符(包括空格、换行符、制表符等)都作为分隔符,刚好能满足你的需求,把所有数字拆成单独的元素,再转成整数就可以了:

import os

# 替换成你的实际文件路径
path = "./"
with open(os.path.join(path, "config.txt"), "r") as config:
    # 读取全部内容并分割,再转成整数列表
    num_list = [int(num_str) for num_str in config.read().split()]

# 现在你可以通过索引单独调用每个数字啦
print(num_list)  # 输出: [11, 12, 13, 21, 22, 23]
print(num_list[0])  # 输出: 11
print(num_list[4])  # 输出: 22

方法二:用正则表达式匹配所有数字

如果你想用正则的方式,补全你之前的代码就行,re.findall(r"\d+", contents)会匹配所有连续的数字字符串,之后转成整数即可:

import os
import re

path = "./"
with open(os.path.join(path, "config.txt"), "r") as config:
    contents = config.read()
    # 匹配所有数字并转成整数列表
    num_list = [int(num_str) for num_str in re.findall(r"\d+", contents)]

print(num_list)  # 同样得到 [11, 12, 13, 21, 22, 23]

这两种方法都能让你得到一个包含所有单独数字的整数列表,之后通过索引就能轻松调用任意一个数字啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:10:49