Piton23
Раз уж тайна задачи остается за 7 замками то объясним хотяб ей что за ошибка )
Q - последовательность, итерируемый объект
число (такое как 5, 18 или 69) - не итерируемый объект
Так вот функция len над итерируемым объектом возвращает количество, если список то количество элементов, если строка то количество символов.
Вы же когда запрашиваете len(S) спрашиваете чему равна длина первого элемента списка, т.е. len(1) на что и получаете ошибку. А ведь действительно нельзя ж подсчитать длину числа.
В итоге вы либо говорите конкретную задачу которую вам нужно решить и получаете решение за пол часа, т.е. приводите пример двухмерного массива. Либо если вам нужен репетитор чтобы спрашивать а что в этой строчке не так, а что в этой, я думаю желающих по уменьшится :)
Спасибо всем огромное, то что я хотела получилось сделать:) Да тайны никакой нет, у нас с этого семестра начался курс по распознаванию изображений, вот делаю лабораторную работу(нужно сделать интегральное представление изображения), для программирования выбрала язык python, вот сижу потихоньку читаю книги и разбираюсь :) наверное с моей стороны совсем нагло будет попросить помочь еще перевести данный код:
public static int SumOfRectangle(int[,] integralImage, Rectangle rect)
{
int A = 0, B = 0, C = 0, D = 0;
if (rect.Top > 0 || rect.Left > 0)
if (rect.Top <= 0)
D = integralImage[rect.Left - 1, rect.Bottom];
else
if (rect.Left <= 0)
B = integralImage[rect.Right, rect.Top - 1];
else
{
A = integralImage[rect.Left - 1, rect.Top - 1];
B = integralImage[rect.Right, rect.Top - 1];
D = integralImage[rect.Left - 1, rect.Bottom];
}
C = integralImage[rect.Right, rect.Bottom];
return A + C - B - D;
}
Тут есть 2 метода - integralImage и Rectangle rect, их я реализовала у меня они intimage и rectangle соответственно. Вот попыталась сейчас перевести данный код, но как всегда мои попытки тщетны:)
from rectangle import rectangle
from intimage import image
def SumOfRectangle(image, rect):
A = 0
B = 0
C = 0
D = 0
if rectangle([rect1]) > 0 || rectangle([rect2]) > 0:
if rectangle([rect1]) <=0:
D = intimage(rectangle([rect2]-1), [rect3]))
else:
if rectangle([rect2]) <=0:
B = intimage(rectangle([rect4]), [rect1] - 1)
else:
A = intimage(rectangle([rect2] - 1, [rect1] - 1)
B = intimage(rectangle([rect4], [rect1] - 1)
D = intimage(rectangle([rect2] - 1, [rect3])
C = intimage(rectangle([rect4]), [rect3])
return A + C - B - D