2013-05-30 139 views
0

我寫了一個簡單的代碼應該畫一個正方形畫,見下圖:嘗試使用龜

from turtle import Screen,Turtle 
    def draw(directions,length,angle,x=0,y=0): 
     s = Screen 
     t = Turtle 
     t.up() 
     t.setpos(x,y) 
     t.down() 
     # iterate over directions 
     for move in directions: 
      if move =='F': 
       t.forward(length) 
      elif move == 'L': 
       t.lt(angle) 
      elif move =='R': 
       t.rt(angle) 
      else: 
       pass 

s.exitonclick() 

,但我得到的是我不明白的錯誤消息。看下面

 >>> draw('FLFLFLFL',50,90) 
    Traceback (most recent call last): 
    File "<pyshell#43>", line 1, in <module> 
     draw('FLFLFLFL',50,90) 
     File "C:/Documents and Settings/RonnieE/Mina dokument/GradSchool/CSC401/Homework 
     7/test1.py", line 11, in draw 
      t.up() 
    TypeError: penup() missing 1 required positional argument: 'self' 

我做錯了什麼?

回答

0

此:

s = Screen 
    t = Turtle 

應該是:

s = Screen() 
    t = Turtle() 

否則,st都爲ScreenTurtle類只是新的名稱。調用該類以生成實例

另外,s.exitonclick()應該在draw定義內(與for對齊)。