2014-11-05 81 views
0

我有兩個文件,我需要turtle_directions.py來讀取test.txt中的指令。我一直在努力工作,但它只是不會閱讀和行動我的命令,任何幫助將不勝感激。如何讓python 3根據text.txt的命令執行

import turtle 

window = turtle.Screen() 
spoc = turtle.Turtle() 

def line(): 
    contents = [] 
    with open('test.txt') as f: 
     for line in f: 
      row = line.split() 
      contents.append(row) 
      print(contents) 

line() 

window.exitonclick() 

我試圖讓這個程序讀取該文本文件是test.txt的

pendown 
color gold 
goto 50 50 
goto 50 100 
circle 10 

任何幫助將大大appriciated,我已經從昨天起

停留在此

編輯:我有列表中的命令,它只是認爲他們是字符串而不是命令:/

回答

0

text.txt中的'命令'是不正確的Python語法。您必須使用正確的Python語法並執行代碼,或者編寫自己的解釋器。我認爲你想要做前者。該命令必須與它們在文件本身中相同,或交互式輸入。

爲了測試的目的,將文本作爲多行字符串放在同一個文件中比較容易。您稍後可以添加text = file.read()。以下顯示了兩項變化,可行。

import turtle as t 
window = t.Screen() 

text = ''' 
t.pendown() 
t.color('gold') 
t.goto(50, 50) 
t.goto(50, 100) 
t.circle(10) 
''' 

exec(text) 

只是一個警告:不要使用與代碼執行exec()你不是你自己寫還是不放心。