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

Julia中如何将字符串数组一次性解析为Int类型矩阵

Julia 一次性解析多行输入整数字符串方案

原写法parse.(Int,split(readlines()))失效的核心原因是:readlines()返回的是每一行内容组成的字符串数组,split函数没有直接处理字符串数组的方法,因此无法直接调用。


方案1:保留行结构,输出二维数组

如果需要保留每行的数字分组(每一行的解析结果作为子数组),使用列表推导即可实现:

result = [parse.(Int, split(line)) for line in readlines()]

输入示例:

123 456
789 101 112

输出示例:
[[123, 456], [789, 101, 112]]


方案2:不保留行结构,输出一维数组

如果需要把所有行的所有数字合并为一个一维数组,有两种常用写法:

  • 无中间数组的高性能写法(适合大输入):
result = parse.(Int, Iterators.flatten(split.(readlines())))
  • 简洁写法(适合小输入):
result = vcat(parse.(Int, split.(readlines()))...)

输入同上述示例时,两种写法的输出均为[123, 456, 789, 101, 112]


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 15:54:06