Я новичок в Python, поэтому вопрос,TypeError: Индексы срезов должны быть целыми числами в Python 3
Я пытаюсь разрезать массив и найти вспомогательный массив длинной длины, которая меньше особое значение. Это мой код,
def main():
a = [1, 2, 3]
print(maxLength(a, 3))
def maxLength(a, k):
max = 0
currTotal = 0
for i in enumerate(a):
for j in enumerate(a):
temp = a[i:i+j:1]
currTotal += a[j]
if currTotal < k:
if len(temp) > max:
max = len(temp)
currTotal = 0
return max
if __name__ == '__main__':
main()
Я получаю следующее сообщение об ошибке,
TypeError: slice indices must be integers or None or have an __index__ method
Я не уверен, что я делаю неправильно с Slice, любая помощь приветствуется.
Что вы думаете о 'i' и' j'? Вы пробовали их печатать? – TigerhawkT3
Существует только одна строка, в которой вы используете срезы: 'temp = a [i: i + j: 1]'. Только переменные, используемые в этом фрагменте, это 'i' и' j'. Вы проверили, что они содержат (и как это отличается от того, что вы ожидаете)? –