You need to enable JavaScript to run this app. 如何从file.txt读取数字并自动创建元素数不超100的数组
优惠活动
大模型
产品
解决方案
定价
更多

如何从file.txt读取数字并自动创建元素数不超100的数组

实现方案

先澄清认知误区:现代计算机内存可轻松承载数万、数十万级别的数字数组,单个数组元素过多绝不会损坏硬件,你之前的顾虑是多余的。我们依然严格按照你提出的“单数组最多100个元素”的要求实现。

语言选择说明

我们用对初学者最友好的Python实现,全程只用基础语法,没有复杂嵌套结构、高级封装逻辑。

完整代码(带逐行注释)

# 打开同目录下的file.txt,自动关闭文件避免资源占用
with open("file.txt", "r", encoding="utf-8") as f:
    # 读取所有行,自动去掉每行末尾的换行符、首尾多余空格
    lines = f.read().splitlines()

# 读取第一行标注的数字总个数(仅做读取,不需要额外做校验逻辑,初学者无需处理异常)
total_num = int(lines[0])

# 初始化临时列表,存放所有从第二行读到的有效数字
all_nums = []
for line in lines[1:]:
    # 跳过文件里可能存在的空行,避免程序报错
    if line.strip():
        all_nums.append(int(line.strip()))

# 定义单个数组的最大元素数,按你的要求设为100
MAX_EVERY_ARR = 100
# 初始化列表,存放所有自动生成的子数组
all_arrays = []

# 循环按100步长切割数字列表,自动生成对应数量的子数组
for start_idx in range(0, len(all_nums), MAX_EVERY_ARR):
    # 从当前起始位置取最多100个数字,作为一个独立的子数组
    current_arr = all_nums[start_idx : start_idx + MAX_EVERY_ARR]
    all_arrays.append(current_arr)

# 结果验证的测试输出
print(f"自动生成了 {len(all_arrays)} 个符合要求的数组")
print(f"第一个数组的内容为:{all_arrays[0]}")

逻辑说明

  • 无需手动计算需要创建的数组数量:程序会根据实际读取到的数字总量自动拆分,比如总共有1050个数字时,会自动生成11个子数组(前10个各存100个元素,最后1个存剩余50个)
  • 运行要求:只需要把file.txt放在和代码文件同一个文件夹里,直接运行即可,不需要修改其他配置
  • 后续调用方式:要使用某个子数组时,直接通过下标取值即可,比如第一个数组就是all_arrays[0],第二个数组就是all_arrays[1]

内容的提问来源于stack exchange,提问作者Рик Plays

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.03 01:45:10