从python文件中读取整数

2024-09-29 02:28:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在从一个包含100000个数字(每行1个)的文件中读取:

var_array = []

with open("IntegerArray.txt", "r") as my_file:
    for line in my_file:
        var_array += line.strip().split('\n')

print(var_array)

这将返回一个字符串数组,但我需要将它们转换为整数。我试着用:

^{pr2}$

但它会抛出错误“TypeError:int()参数必须是字符串或数字,而不是‘list’”。在

我还试着用地图:

var_array.append(map(int,line.strip().split('\n')))

但打印显示了这一点(88>;,…)

谢谢你的建议。在


Tags: 文件字符串txtvarmywithline数字
3条回答

如果安装了Pandas,则更容易使用:

>>> import pandas as pd
>>> pd.read_csv('IntegerArray.txt', header=None)
   0
0  1
1  3
2  4
3  5

如果您希望它作为内置数据类型:

^{pr2}$

你不需要在这里分开:

var_array.append(int(line.strip()))

剥离和拆分:

^{pr2}$

问题出在split('\n')函数调用中,该函数将行转换为由\n字符分隔的令牌列表(由于您正在执行strip(),因此该行中不应存在该标记)。删除此呼叫并换行线条条()用int()调用,一切正常。在

以下是更新版本:

var_array = []

with open("IntegerArray.txt", "r") as my_file:
    for line in my_file:
        var_array.append(int(line.strip()))

print(var_array)

相关问题 更多 >