我该怎么做?我拉了一个int值的列表,并试图在列表中添加年份。你知道吗
dataList = []
read = open("USPopulation.txt", 'r')
population = read.readline().rstrip('\n')
year = 1950
i = 0
maxPopulation = 0
minPopulation = sys.maxsize
avgPopulation = 0
total = 0
maxPop_Year = 0
minPop_Year = 0
while population != "":
year += i
dataList[i].append(year)
dataList[i].append(population)
i += 1
population = read.readline().rstrip('\n')
错误
line 8, in <module>
dataList[i].append(year)
IndexError: list index out of range
样本输入
151868
153982
156393
158956
161884
165069
168088
171187
174149
177135
179979
182992
185771
188483
在我处理信息输出之前,我试着先运行这个程序。但我要做的是处理这些信息,找出人口的最大数量和最小数量,以及年与年之间的平均数,并显示这些信息。你知道吗
for i in range(len(dataList)):
if dataList[i][1] > maxPopulation:
maxPopulation = dataList[i][1]
macPop_Year = dataList[i][0]
if dataList[i][1] < minPopulation:
minPopulation = dataList[i][1]
minPop_Year = dataList[i][0]
print("The year", maxPop_Year, "had the most population with", maxPopulation)
print("The year", minPop_Year, "had the least population with", minPopulation)
错误
if dataList[i][1] > maxPopulation:
TypeError: '>' not supported between instances of 'str' and 'int'
min、max和avg的完整代码(但使用内联列表而不是文件读取器) 应该使用哈希表或关联数组,而不是列表。 声明
year += i
也是不正确的,因为它将使year
以一种意想不到的方式增加1950年、1951年、1953年、1956年、1960年。。。你知道吗输出上述-
相关问题 更多 >
编程相关推荐