0
リストからデータを使ってビルボードの背景に4枚のシートを貼り付けできるようにする必要があります。リスト:python:リストからデータを読み込んで機能を停止させるにはどうすればいいですか?
data_sets = [
# These two initial data sets don't put any sheets on the billboard
# Data sets 0 - 1
['O'],
['X'],
# These data sets put Sheet A in all possible locations and orientations
# Data sets 2 - 9
['O', ['Sheet A', 'Location 1', 'Upright']],
['O', ['Sheet A', 'Location 2', 'Upright']],
['O', ['Sheet A', 'Location 3', 'Upright']],
['O', ['Sheet A', 'Location 4', 'Upright']],
['O', ['Sheet A', 'Location 1', 'Upside down']],
['O', ['Sheet A', 'Location 2', 'Upside down']],
['O', ['Sheet A', 'Location 3', 'Upside down']],
['O', ['Sheet A', 'Location 4', 'Upside down']]
]
私は私のシートを描画するためにカメを取得しようとしているが、それ、それはそれを描くと、それはリスト全体を通過してアウトラインを描く上で続けて、私はそれがリストを通過停止する必要があります一度sheet_a_upright()を実行します。 「x」と「o」はこの時点では何も意味しません。私のgoto_loc()関数にも同じことが起こっていましたが、data_setsをパラメータとして渡して固定しました。これは、sheet()関数でこれを行うと、何も描画されません。
#location function for data_sets
def goto_loc(data_sets):
for location in data_sets:
if len(location)>1 and 'Location 1' in location[1]:
goto(-300, 0)
elif len(location)>1 and 'Location 2' in location[1]:
goto(-100, 0)
elif len(location)>1 and 'Location 3' in location[1]:
goto(100, 0)
elif len(location)>1 and 'Location 4' in location[1]:
goto(300, 0)
#function for which sheet should be drawn from data_sets
def sheet():
for style in data_sets:
if len(style)>1 and 'Sheet A' in style[1]:
sheet_a_upright()
elif len(style)>1 and 'Sheet B' in style[1]:
sheet_b_upright()
elif len(style)>1 and 'Sheet C' in style[1]:
sheet_c_upright()
elif len(style)>1 and 'Sheet D' in style[1]:
sheet_d_upright()
#define sheet outline and fill
def outline():
penup()
forward(100)
pendown()
fillcolor('green')
begin_fill()
left(90)
fd(250)
left(90)
fd(200)
left(90)
fd(500)
left(90)
fd(200)
left(90)
fd(250)
right(90)
penup()
end_fill()
#function for sheet A in upright position
def sheet_a_upright():
#sheet outline and fill
outline()
# Paste the sheets onto the billboard as per the provided data set
def paste_up(data_sets):
for each in data_sets:
goto_loc(data_sets)
sheet()
paste_up(data_sets[2])