如何读取input.txt文件的值并赋值给A、E、L数组用于后续for循环运算
问题:如何读取"input.txt"文件并将内容映射为对应数组变量?
我的
input.txt文件格式如下:A,0.85,0.72,0.94,.......... n (values); E,0.11,0.17,0.03,.......... n (values); L,0.85,0.73,0.31,.......... n (values);我需要将首字母对应的数值转为数组,效果如下:
A[0] = 0.85; A[1] = 0.72; ...... A[n] = 对应文本内的数值E、L两个变量也按相同规则处理,后续要通过for循环遍历三个数组的同下标值执行业务逻辑。
实现方案
Python 版本
# 初始化存储容器 var_map = {} # 读取文件逐行解析 with open("input.txt", "r", encoding="utf-8") as f: for line in f: # 移除末尾换行、分号,空行跳过 line = line.strip().rstrip(";") if not line: continue # 按逗号拆分内容 parts = line.split(",") var_name = parts[0] # 数值部分转浮点数存入数组 var_map[var_name] = [float(num) for num in parts[1:]] # 提取对应数组 A = var_map["A"] E = var_map["E"] L = var_map["L"] # 后续循环使用 n = len(A) for i in range(n): current_a = A[i] current_e = E[i] current_l = L[i] # 此处写入你的业务方程逻辑即可 pass
如果三个数组长度不一致,可以取最小长度作为循环边界:n = min(len(A), len(E), len(L))
Node.js 版本
const fs = require("fs"); const varMap = {}; // 同步读取文件内容 const content = fs.readFileSync("input.txt", "utf8"); content.split("\n").forEach(line => { line = line.trim().replace(/;$/, ""); if (!line) return; const parts = line.split(","); const varName = parts[0]; varMap[varName] = parts.slice(1).map(Number); }); // 提取对应数组 const A = varMap.A; const E = varMap.E; const L = varMap.L; // 后续循环使用 const n = A.length; for (let i = 0; i < n; i++) { const currentA = A[i]; const currentE = E[i]; const currentL = L[i]; // 此处写入你的业务方程逻辑即可 }
内容的提问来源于stack exchange,提问作者baezacaljo
相关产品推荐
相关产品推荐

