Python 3.7.2 Сообщение об ошибке, связанной с исходной папкой Turtle - PullRequest
0 голосов
/ 26 февраля 2019

Я установил Python 3.7.2 в Windows 7. Когда я пишу код черепахи и сохраняю его в папке Python, он работает без ошибок.Если я сохраню его в другой папке, он выдаст эту ошибку:

NameError: имя точки не определено.

Вот мой код:

from tkinter import *

from tkinter import ttk

from turtle import *

def triangle():

    fd(200);left(135);fd(150);goto(0,0)

def rectangle():

    lt(180);fd(250);lt(90);fd(125);lt(90);fd(250);lt(90);fd(125)

def square():

    fd(250);rt(90);fd(250);rt(90);fd(250);rt(90);fd(250)

def grdk():

    circle(75)

window=Tk()

window.title('GeoFigs')

window.geometry('250x200')

label=Label(window,text='Choose one figure',font='Aharoni -22 bold')

label.pack()

sekunga=ttk.Button(window,text='TRIANGLE',command=triangle)

sekunga.pack()

chor=ttk.Button(window,text='RECTANGLE',command=rectangle)

chor.pack()

kv=ttk.Button(window,text='SQUARE',command=square)

kv.pack()

grd=ttk.Button(window,text='CIRCLE',command=grdk)

grd.pack()

mainloop()

1 Ответ

0 голосов
/ 26 февраля 2019

Я не уверен, имеет ли это какое-либо отношение к вашей проблеме «NameError: name точка не определена», но я бы не стал отлаживать программу черепахи, настроенную как эта.Черепаха предназначена для работы либо в автономном (только для черепахи), либо в внедренном (в черепахе и в tkinter) режиме, но у вас есть встроенный режим в автономном режиме, который может создать два корня Tk и другие проблемы.Ниже приведена доработка кода вашей черепахи в режиме внедренный :

from tkinter import *
from turtle import ScrolledCanvas, TurtleScreen, RawTurtle

def triangle():

    turtle.forward(200)
    turtle.left(135)
    turtle.forward(150)
    turtle.home()

def rectangle():

    turtle.left(90)

    for _ in range(2):
        turtle.left(90)
        turtle.forward(250)
        turtle.left(90)
        turtle.forward(125)

def square():

    for _ in range(4):
        turtle.forward(200)
        turtle.right(90)

def circle():

    turtle.circle(75)

window = Tk()
window.title('Graphics')
window.geometry('640x480+300+0')

figures = Toplevel(window)
figures.title('Figures')
figures.geometry('250x150')

Label(figures, text='Choose one figure').pack()

Button(figures, text='TRIANGLE', command=triangle).pack()
Button(figures, text='RECTANGLE', command=rectangle).pack()
Button(figures, text='SQUARE', command=square).pack()
Button(figures, text='CIRCLE', command=circle).pack()

canvas = ScrolledCanvas(window)
canvas.pack(fill="both", expand=True)

screen = TurtleScreen(canvas)
screen.screensize(640, 480)

turtle = RawTurtle(screen)

screen.mainloop()

Попробуйте, и если «NameError: имя точка не определена», предоставьте нам полную обратную трассировку ошибкикак редактирование вашего исходного вопроса.

...