【发布时间】:2015-10-15 19:56:47
【问题描述】:
我似乎无法将数组中的整数相乘。
grid = [8, 2, 22, 97, 38, 35, 29, 76, 51, 87]
digits = 1
startPos = 0
total = []
for i in range(0,7):
for i in range(startPos, startPos+3):
value = int(grid[i:i+1])
digits = digits * value
total.append(digits)
startPos = startPos + 1
digits = 1
我不断收到错误
int() argument must be a string, a bytes-like object or a number, not 'list'
据我所知,我的数组中的值是整数。我做错了什么?为了澄清起见,我正在寻找可以从数组中任何 3 个相邻数字中得出的最大值。
【问题讨论】:
-
您不能将数组作为参数提供给
int。尝试使用int(grid[i])而不是int(grid[i:i+1]) -
grid[i:i+1]得到一个切片而不是一个元素。[1,2,3,4][1:2] -> [2]
标签: python arrays list python-3.x