python - 从文本文件中读取数字
问题描述
我正在尝试从一个看起来像这样的文本文件中读取数字:
file.txt:
5
2 3 4 2 3 6 8 4 5
其中第一行包含一个代表整数k的数字。接下来是由空格分隔的可变数量的整数,我需要将它们作为整数输入到数组中,这样我就可以对它们进行一些算术运算。
import sys
fileName = sys.argv[1]
with open(fileName) as f:
k = [int(x) for x in next(f).split()] # read first line, this will be k
print("Value for _k_")
print(k)
arrayInts = [] # array used for the numbers
for line in f: # read rest of numbers
arrayInts.append([int(x) for x in line.split()])
print("The list of integers:")
print(arrayInts)
现在 arrayInts 打印得很好,但是类型是“列表”,我在使用它进行算术时遇到了麻烦。出于某种原因,我也无法将其转换为整数数组。
有没有更简单的方法来做到这一点?
解决方案
此行使用该行arrayInts.append([int(x) for x in line.split()])
中的整数创建一个列表,然后将该列表附加到arrayInts
列表中。因此,您会得到一个列表列表。如果您只是想要一个列表中的所有整数,您可以执行以下操作:
arrayInts = [] # array used for the numbers
for line in f: # read rest of numbers
for x in line.split():
arrayInts.append(int(x))
推荐阅读
- javascript - Javascript文本动画未触发
- javascript - 使元素向中心隐藏,React.js
- apache - .htaccess 用问号重写 URL
- javascript - 如何使用 Emscripten 和 Embind 发出的 .js 和 .wasm 工件?
- flutter - 打开屏幕时,getter 'stream' 在 null 上被调用,突然显示列表
- plotly - 在 Plotly 中以特定值开始轴范围
- html - 我想对齐包含时间元素的列表元素中的文本
- powershell - powershell - 跳过脚本部分或跳转到另一部分
- forms - 在 EasyAdmin 3 和 symfony 5 中使用 EntityType 表单进行编辑和新建
- excel - 包含不带空格的文本的单元格中的数字总和