2017-06-01 20 views
0

我想用烏龜來創建一個正方形,同時嘗試給烏龜窗口一個顏色「黑色」。我收到錯誤,任何輸入都會有幫助。用Python中的turtle.bgcolor()獲取錯誤

下面是我的代碼:

import turtle 

def draw_square(): 
window = turtle._Screen 
window.bgcolor("black") 


brad = turtle.Turtle() 
brad.forward(100) 
window.exitonclick() 

draw_square() 

下面是我在錯誤得到:

color = self._bgcolor(color) 

AttributeError: 'str' object has no attribute '_bgcolor' 

回答

0

turtle._Screen給你Screen,而不是一個屏幕對象。改爲使用turtle.getscreen()

0

與您的代碼一般問題:

不要訪問方法,或變量,其名稱以下劃線「_」。如果你是這個圖書館的新手,這些是內部方法,不適合你。在文檔中找到高級方法。

如果您將背景顏色設置爲黑色,則需要更改筆的顏色,否則您將在黑色背景上繪製黑色正方形並且它不可見。

不要在名爲draw_square()的函數中調用窗口方法 - 它不應該知道屏幕的狀態以繪製正方形。處理這些細節以外的功能。

這裏是你的代碼的沿按照上述準則返工:

import turtle 

def draw_square(): 
    brad = turtle.Turtle() 

    brad.pencolor("white") 

    for _ in range(4): 
     brad.forward(100) 
     brad.right(90) 

window = turtle.Screen() 
window.bgcolor("black") 

draw_square() 

window.exitonclick()