首页 > 解决方案 > Python3读取文件并将具有int值的二维数组放置一行

问题描述

我很感兴趣,这 2 行可以在 1 行中解决:

data = [ line.strip().split() for line in f ] # f = file
data = [ [ int(num) for num in nums ] for nums in data ]

文件示例行:

9 3 14 3 10 17
9 8 19 12 5 9

示例结果:

[[9, 3, 14, 3, 10, 17], [9, 8, 19, 12, 5, 9]]

标签: pythonpython-3.xmultidimensional-arrayfile-read

解决方案


尝试:

f = open("file.txt", "r")
data = [[int(num) for num in line.split()] for line in f.readlines()]
print(data)
[[9, 3, 14, 3, 10, 17], [9, 8, 19, 12, 5, 9]]

或者使用 numpy 可以稍微整洁一些:

import numpy as np
data = np.loadtxt("file.txt", dtype=int).tolist()

推荐阅读