Я пытаюсь сделать некоторые фрактальной обработки изображений, и при запуске мой код, я получаю сказалПопытка запустить для цикла, говорят, что «поплавок» объект не итерацию
Traceback (most recent call last):
File "all_the_maps.py", line 72, in <module>
(xh, yh) = Hf(xf,yf,r)
TypeError: 'float' object is not iterable
Соответствующий код блок
(xf,yf) = (0,0)
(xh,yh) = (0,0)
for n in xrange(N):
r = random.randint(1,10000)
(xf,yf) = F(xf,yf,r)
(xh,yh) = Hf(xh,yh,r)
h[int(round(xh)),int(round(yh))] = f[int(round(xf)),
int(round(yf))]
и полный файл на http://pastebin.com/kbJD3BK9 (это довольно долго, и я не очень хорошо питона, так что он может быть болезненным для чтения).
Я посмотрел на других людей, которые получили эту ошибку, и кажется, что они повторяют что-то, что невозможно повторить (например, для i в 7: вместо i в диапазоне (7):) , Однако, похоже, это не то, что я делаю неправильно, и я действительно не знаю, что делать. Если бы кто-нибудь мог помочь, это было бы по достоинству оценено.
EDIT: Hf определяется как:
def Hf(x,y,r):
if r <= 10000*a*b:
return 0.5*x, 0.5*y
elif r <= 10000*b:
return 0.5*x + 255.0
elif r <= 10000*(1 - a + a*b):
return 0.5*x + 255.0, 0.5*y + 255.0
else:
return 0.5*x, 0.5*y + 255.0
Можете ли вы разместить функцию 'Hf' здесь? – aIKid