标签: turtle-graphics

如何在 Python 的海龟图形中创建旋转文本?

我正在使用带有 tkinter 和 tcl 8.6 版本的 Python 3.9,因此根据2010 年 stackoverflow 上的答案,我应该能够绘制旋转文本。实际上我可以在 tkinter 中绘制旋转文本,因此我尝试使用海龟模块创建旋转文本:

import turtle
txt = '      '
tt = turtle.Turtle()
tt.write(txt, angle=-45)
Run Code Online (Sandbox Code Playgroud)

但收到错误消息:TypeError: write() got an unexpected keyword argument 'angle'这意味着海龟模块尚不支持文本旋转功能。

这就提出了一个问题:是否有人知道一个补丁/修复程序可以使turtle模块利用Python 3自3.7.2版本以来提供的文本旋转功能?

python turtle-graphics python-3.x python-turtle

3
推荐指数
1
解决办法
480
查看次数

如何在python中创建一个继承自turtle Module的子类

所以,我正在尝试学习 Python,每次我在这里发布问题时,都感觉像是屈服了......

我正在尝试制作我自己的turtle.Turtle类。

    import turtle
class TurtleGTX(turtle.Turtle):
    """My own version of turtle"""
    def __init__(self):
        pass

my_turtle = TurtleGTX()
my_turtle.forward(10)
Run Code Online (Sandbox Code Playgroud)

提供回溯:AttributeError: 'TurtleGTX' object has no attribute '_position'。然后我学到的是一个“私有变量”,根据官方的python教程,我可以在我的子类TurtleGTX中修改/覆盖。如何用一个像乌龟一样大的程序来做到这一点似乎相当困难,这意味着我缺少一个更简单的问题解决方案。最后我学到了,这就是重点,但我仍然希望由社区运行它,看看是否有一种优雅的方式来创建一个turtle.Turtle的子类。(下一步是让你的乌龟表现出与标准乌龟不同的行为)

所以下面的评论让我觉得也许我可以这样做:

import turtle
class TurtleGTX(turtle.Turtle):
    """My own version of turtle"""


my_turtle = TurtleGTX()
my_turtle.forward(100)
Run Code Online (Sandbox Code Playgroud)

哪个实际运行!现在我要看看这会把我引向何方……有些东西告诉我,我可能已经向前走了两步,因为这意味着我将无法在我的子类上初始化任何东西……

python inheritance subclass turtle-graphics

2
推荐指数
1
解决办法
3956
查看次数

使用Python龟绘制更快的圆圈

我有一个练习,我必须用Python龟画很多圈子.我已经设置speed(0)并且我正在使用:

from turtle import*
speed(0)
i=0
while i < 360:
    forward(1)
    left(1)
    i+=1
Run Code Online (Sandbox Code Playgroud)

画圆圈.这需要很长时间.有没有更快的方法?

python turtle-graphics

2
推荐指数
1
解决办法
8937
查看次数

如何在乌龟图形中制作具有L系统的分形植物?

我试图从维基百科制作这个分形植物(例7).然而,即使我使用相同的规则,我最终会看到更像树的东西.这是代码:

def fraktal_plante(padde, depth):
    Xmerke(padde, depth-1)       # X

def Xmerke(padde, depth):
    if depth > 0:
        padde.forward(12)
        padde.right(25)
        pos1 = padde.position()
        head1 = padde.heading()
        Xmerke(padde, depth-1)
        padde.up()
        padde.goto(pos1)
        padde.setheading(head1)
        padde.down()
        padde.left(25)
        Xmerke(padde, depth-1)
        padde.up()
        padde.goto(pos1)
        padde.setheading(head1)
        padde.down()
        padde.left(25)
        padde.forward(12)
        pos2 = padde.position()
        head2 = padde.heading()
        padde.left(25)
        padde.forward(12)
        Xmerke(padde, depth-1)
        padde.up()
        padde.goto(pos2)
        padde.setheading(head2)
        padde.down()
        padde.right(25)
        Xmerke(padde, depth-1)

    def Fmerke (padde, depth):
        if depth > 0:
            padde.forward(12)
            padde.forward(12)
Run Code Online (Sandbox Code Playgroud)

你能帮助我吗?我是python的新手,所以请以简单的方式解释!

python turtle-graphics

2
推荐指数
1
解决办法
4230
查看次数

Python 3.x龟非常慢?

我发现python的乌龟实现速度非常慢.我预计会有一些延迟,但不会等待相对简单的分形(5次迭代的Koch曲线).

即使设置后turtle.speed(0)它仍然很慢.也许有一个错误,因为它不像文档中声称的那样瞬间?

这个答案建议通过隐藏窗口来重新实施海龟.类似的问题没有答案.我错过了什么,或者正在重新实施的方式去?

这是我的精简代码(l系统的创建几乎是瞬间的):

import turtle

def l_system(V, w, P, n):
    current = w

    for i in range(n):
        current = [P[x] if x in P else x for x in list(current)]
        current = ''.join(current)

    return current

def run_turtle(var, start, rules, iters, angle, size, scale):
    terry = turtle.Turtle()
    terry.pensize(1)
    terry.pencolor("blue")
    terry.speed(0)

    dist = size / ((iters + 1) ** scale)
    positions = []
    angles = []

    instructions = l_system(var, start, rules, iters)

    for instr in …
Run Code Online (Sandbox Code Playgroud)

python tkinter turtle-graphics

2
推荐指数
1
解决办法
3307
查看次数

如何在python乌龟模块中使画布更大

我用python做了一个画乌龟的程序,但是我画乌龟的画布不够大。我正在尝试使这个画布更大,以便我可以在页面上容纳更多内容并使内容更大。我正在trinket.io 中对此进行编程。

python size turtle-graphics

2
推荐指数
1
解决办法
2万
查看次数

如何使乌龟对象查看鼠标单击的位置

我想写一个turtle程序,你点击哪里,乌龟就会去哪里。到目前为止,我有这个:

from turtle import *
screen = Screen()
turtle = Turtle()
screen.onscreenclick(turtle.goto)
Run Code Online (Sandbox Code Playgroud)

但问题是乌龟对象只是保持面向同一方向。我想以某种方式让它朝着它要去的地方看。我怎样才能做到这一点?

python turtle-graphics

2
推荐指数
1
解决办法
867
查看次数

将turtle模块与tkinter canvas集成在一起

我正在尝试将Turtle模块集成到我用TKInter创建的界面中,目前我有一个画布,我希望乌龟能够绘制到这个界面(参见示例1).然而,我迷失了如何得到它的吸引力.

例

python tkinter turtle-graphics python-3.x

2
推荐指数
1
解决办法
7025
查看次数

Python while循环没有表达式

可以在没有表达式的Python中使用while循环吗?我知道在其他语言中你可以做类似的事情:

while(flag) {};
Run Code Online (Sandbox Code Playgroud)

我试图在Python中做类似的事情,但找不到答案.这是我到目前为止:

import turtle
from random import randrange

def is_in_screen(t, w): #CHECKS TO SEE IF STILL IN SCREEN
    flag = True
    r = w.window_width() / 2
    l = r * -1
    u = w.window_height() / 2
    d = u * -1

    x_cor = t.xcor()
    y_cor = t.ycor()

    if (x_cor < l or x_cor > r or y_cor < d or y_cor > u):
        flag = False
    return flag

def move_to(t, w): #MOVE IN RANDOM DIRECTION AND RANDOM DISTANCE …
Run Code Online (Sandbox Code Playgroud)

python turtle-graphics

2
推荐指数
1
解决办法
177
查看次数

E1101:模块“ turtle”没有“ forward”成员

我是编程新手,我下载了Python,并使其在Visual Studio Code中运行。我在弄乱turtle模块及其功能。

这些函数本身可以工作,但pylint会将其标记为错误,并说没有像我编写的代码那样的“成员”。

我将如何解决该错误?(我不想将其设置为“忽略”该问题,而是认识到我输入的代码是有效的并且来自于turtle模块)

python pylint turtle-graphics visual-studio-code

2
推荐指数
1
解决办法
1146
查看次数