我需要找到一个文件的整数。我需要得到这些整数的平均值(我已经计算出这部分了)。我得到错误:“error on input[]:无法将'int'对象隐式转换为str”
编辑-代码正在工作。谢谢大家!迪卡普里奥帮助我想出了最终的解决方案。在
我编辑了我的最终代码如下:
def average_ints():
integers = []
num_ints = 0
avg = 0
with open("file") as f:
for line in f:
for i in line.split(' '):
integers.append(int(i))
num_ints = num_ints + 1
avg = (sum(integers))/((num_ints))
return avg
如何找到这个文件的整数?在
使用cast
int(x)
将str转换为int。默认情况下,从文件中读取的所有内容都是str编辑:
我只是觉得你可能对
for i in line:
部分有问题。 这条线需要分开。尝试使用for i in line.split(' ')
假设您的int被一个空格分割。在编辑2:
如果每行使用一个int:
^{pr2}$这里的问题是行中的'int'是一个字符串,您需要先将其转换为整数。您可以通过用int(int)替换'int'来实现这一点。在
这是假设文件中只有数字(可以表示为浮点数或整数的字符)。如果不是的话,你需要解释清楚。在
用内置函数命名变量也不是一个好主意,所以我将把int改成其他名称。在
您可能不应该使用“int”作为变量,因为它是一个内置的变量,如果您以后试图引用它,您将无法使用它。在
所以从外观上看,你想把一个文件中的所有整数取平均值?这里有一个函数可以做到这一点:
相关问题 更多 >
编程相关推荐