использование функций для перемещения объекта в графическом интерфейсе - PullRequest
0 голосов
/ 14 июня 2011

Пожалуйста, у меня проблема с функциями Python и возвращением.

from graphics import*
win = GraphWin('Me',640,160)


mylist=[]
def move_ob(ob):

    ob.move(4,0)
    return ob

def circle():
    for x in range (10,200,10):
        for y in range (10,200,10):
            c =Circle (Point(x,y),5)
            c.draw(win)
            mylist.append(c)


def main():
    circle()
    win.getMouse()
    move_ob(mylist)

    win.getMouse()
    win.close()

main()

То, что я когда-либо делаю, дает мне эту ошибку

ob.move(4,0)
AttributeError: 'list' object has no attribute 'move'

PS: эта библиотека из книгиДжона Зелле, изучающего основы Python ..

Я хочу сделать те круги, которые я делаю ...

1 Ответ

4 голосов
/ 14 июня 2011

Вы передаете mylist, что является list.Списки понятия не имеют, что такое move.

Я предполагаю, что вы хотите переместить все круги в списке.Поэтому вам может потребоваться:

for circleObject in mylist:
    move_ob(circle)

Вместо move_ob(mylist).

...