2017-06-01 22 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() 
関連する問題