python - 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]]
解决方案
尝试:
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()
推荐阅读
- python - 如何用 Python 标记每个黑暗区域?
- python - 每次运行中网络的每个结果都有差异?
- django - 在 index.html 原始路径上显示 Django DB 值
- cmake - cmake 抱怨“找不到 X11(缺少:X11_X11_LIB)”,但所有与 x11 相关的东西都已经安装了
- php - 如何在 woocommerce 管理订单上隐藏“清空垃圾”按钮?
- javascript - 一旦页面加载并且需要它们的功能通过,如何从 URL 中删除查询参数?
- python - Telegram Await CallbackQueryHandler 未被调用
- http - 是否有“服务注入”的软件工程概念/模式?
- javascript - 如何在传单上设置同一个 geoJSON 文件的三个不同变量的样式?
- unicode - 在 Sublime Text 中,如何用它的 Unicode 替换一个字符?