标签: turtle-graphics

Python成像,调整Turtle Graphics窗口的大小

对于海龟窗口,我的图像太大。我必须放大图像,因为每个地方需要的文本重叠。

如何在python中调整窗口大小?

python turtle-graphics

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

如何获取我的海龟图形海龟的 X 坐标

我可以使用以下代码创建一个位于窗口中的乌龟:

Turtle t1 = new Turtle(w,100,100);
Run Code Online (Sandbox Code Playgroud)

如果我想知道它的坐标,我可以写:

int getX(w);
Run Code Online (Sandbox Code Playgroud)

但是当我有 2 只海龟 t1 和 t2 时,如果我想知道海龟 1 的 X 坐标,我不知道该怎么做。

Turtle t1 = new Turtle(w,100,100);
Turtle t2 = new Turtle(w,200,100);
Run Code Online (Sandbox Code Playgroud)

如果我写int getX(w),我会得到哪个海龟 X 坐标?我该如何写才能得到t1坐标?

java turtle-graphics

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

使用 Python Turtle 进行多线程处理

有没有办法同时使用两只海龟在一个窗口中同时画两个圆?我试过这段代码,但两只海龟在分开的窗口中绘制

from multiprocessing import Process
import turtle

t1=turtle.Turtle()
t2=turtle.Turtle()

def tes1():
  t1.speed(0)
  i=0
  while i < 360:
    t1.forward(1)
    t1.left(1)
    i+=1

def tes2():
  t2.speed(0)
  i=0
  while i < 360:
    t2.forward(1)
    t2.right(1)
    i+=1

if __name__ == '__main__':
  p1 = Process(target=tes1)
  p1.start()
  p2 = Process(target=tes2)
  p2.start()
  p1.join()
  p2.join()
Run Code Online (Sandbox Code Playgroud)

但是有人告诉我尝试多线程但是这段代码有一个糟糕的语义错误!!

import threading
import turtle

t1=turtle.Turtle()
t2=turtle.Turtle()

def tes1():
  t1.speed(0)
  i=0
  while i < 360:
    t1.forward(1)
    t1.left(1)
    i+=1

def tes2():
  t2.speed(0)
  i=0
  while i < 360:
    t2.forward(1)
    t2.right(1)
    i+=1

t = threading.Thread(target=tes1)
t.daemon = True …
Run Code Online (Sandbox Code Playgroud)

python multithreading turtle-graphics python-3.x

4
推荐指数
2
解决办法
5380
查看次数

Python 海龟在边界内随机游走

我想使用海龟创建一个程序,该程序在随机方向上移动 50 次随机距离,在 x 和 y 轴上保持在 -300 到 300 范围内(通过向相反方向转动并在到达边界时向前移动) 。

当 if 语句为 true 时,代码运行良好,但偶尔当执行 else 语句时(由于超出边界),else 语句会一次又一次执行,直到计数达到 50。换句话说,它会沿着同一条线。我不明白为什么,因为当乌龟弹开时,它应该在边界内并再次运行 if 语句,而不是 else 语句。我该如何解决这个问题,以便乌龟在弹跳后继续随机行走?谢谢

我的代码如下所示

import turtle
import random

count = 0
while count <51:
    count += 1
    if (turtle.xcor() >-300 and turtle.xcor() <300) and\
       (turtle.ycor() >-300 and turtle.ycor() <300):
        turtle.forward(random.randint(30,100))
        turtle.right(random.randint(0,360))
    else:
        turtle.right(180)
        turtle.forward(300)
Run Code Online (Sandbox Code Playgroud)

python turtle-graphics

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

如何改变乌龟的大小?

x每次按下键盘时,我都试图将窗口中乌龟的大小加倍。我尝试使用.turtlesize(2,2,2),但这是不对的。每次按下该键时,我都需要加倍,因此如果乌龟大小是,则每次按下时,(1,1,1)它都会变成(2,2,2)然后等等。(4,4,4)x

这是我到目前为止所拥有的:

import turtle
turtle.setup(500,500)
wn = turtle.Screen()
wn.title("Commands")
wn.bgcolor("black")

tess = turtle.Turtle()
tess.shape("triangle")
tess.color("red")
tess.left(90)

def increaseSize():
    size = tess.turtlesize()
    increase = tuple([2 * num for num in size])
    tess.turtlesize(increase) #this is where the error occurs

wn.onkey(increaseSize, "x")
wn.listen()
Run Code Online (Sandbox Code Playgroud)

python resize turtle-graphics

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

在 Python 中绘制分形树,不知道如何进行

到目前为止,我在 python 中有这个

import turtle
import math
t = turtle.Turtle()
t.shape("turtle")
t.lt(90)

lv = 11
l  = 100
s  = 17

t.penup()
t.bk(l)
t.pendown()
t.fd(l)

def draw_tree(l, level):
    l = 3.0/4.0*l
    t.lt(s)
    t.fd(l)
    level +=1
    if level<lv:
        draw_tree(l, level)

    t.bk(l)
    t.rt(2*s)
    t.fd(l)
    if level<=lv:
        draw_tree(l, level)
    t.bk(l)
    t.lt(s)
    level -=1

t.speed(100)        
draw_tree(l, 2)
Run Code Online (Sandbox Code Playgroud)

但我有点被困在如何进步上,因为我需要伸手去建造这棵树。这就是我想要制作的:

分形树

谁能告诉我我做错了什么?

python fractals turtle-graphics

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

Python Turtle.Terminator 即使在使用 exitonclick() 之后

我尝试为海龟制作函数,使其非常容易绘制形状。代码如下所示:

import turtle as t

def square():
     tw = t.Screen()
     for i in range(4):
          t.forward(100)
          t.right(90)
     tw.exitonclick()
def triangle():
     tw = t.Screen()
     for i in range(3):
          t.forward(100)
          t.right(120)
     tw.exitonclick()
def star():
     tw = t.Screen()
     for i in range(5):
          t.forward(150)
          t.right(144)
     tw.exitonclick()
Run Code Online (Sandbox Code Playgroud)

当我在 shell 中运行此代码时,会发生终结者错误:

import turtle as t

def square():
     tw = t.Screen()
     for i in range(4):
          t.forward(100)
          t.right(90)
     tw.exitonclick()
def triangle():
     tw = t.Screen()
     for i in range(3):
          t.forward(100)
          t.right(120)
     tw.exitonclick()
def star():
     tw = t.Screen()
     for i in …
Run Code Online (Sandbox Code Playgroud)

python function turtle-graphics python-3.x

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

不明白这个 AttributeError: module 'turtle' has no attribute 'Turtle'

#archimedes spiral by rays

import math
import turtle

def spiral(t, a, b):
    diff=5
    number=500
    for i in range(number):
        t.penup()
        t.fd(a+b*i*diff*math.pi/180)
        t.pendown()
        t.lt(90)
        t.fd(10)
        t.bk(10)
        t.rt(90)
        t.penup()
        t.bk(a+b*i*diff*math.pi/180)
        t.lt(diff)


bob=turtle.Turtle()
bob.speed(1000)

spiral(bob,0, 2)
Run Code Online (Sandbox Code Playgroud)

代码给出错误信息如下:

#archimedes spiral by rays

import math
import turtle

def spiral(t, a, b):
    diff=5
    number=500
    for i in range(number):
        t.penup()
        t.fd(a+b*i*diff*math.pi/180)
        t.pendown()
        t.lt(90)
        t.fd(10)
        t.bk(10)
        t.rt(90)
        t.penup()
        t.bk(a+b*i*diff*math.pi/180)
        t.lt(diff)


bob=turtle.Turtle()
bob.speed(1000)

spiral(bob,0, 2)
Run Code Online (Sandbox Code Playgroud)

我不明白错误信息。我怎样才能使代码工作?这段代码在大约 3 到 4 个月前曾经顺利运行。

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

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

如何更改 python 龟窗口的大小?

我目前正在尝试用乌龟在 python 中绘制一个 Mandelbrot 集。但是,我的问题与 Mandelbrot 无关。我无法更改乌龟窗口的大小。我怎样才能做到这一点?

我尝试初始化屏幕并使用 screensize 方法设置屏幕大小。如果我这样做,什么都不会改变。

这是我绘制集合的代码。我粘贴了整个代码,因为我不知道我做错了什么,屏幕尺寸没有改变。

from turtle import *


height = 360
width = 360
screen = Screen()
screen.screensize(width, height)


tu = Turtle()
tu.hideturtle()
tu.speed(0)
tu.penup()


def decreasePoint(n, start1, stop1, start2, stop2):
    return ((n - start1) / (stop1 - start1)) * (stop2 - start2) + start2


for x in range(width):
    for y in range(height):

        a = decreasePoint(x, 0, width, -2, 2)
        b = decreasePoint(y, 0, height, -2, 2)
        ca = a
        cb = b …
Run Code Online (Sandbox Code Playgroud)

python turtle-graphics screen-size

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

我怎样才能在乌龟中填充这些方块 - Python

我想填补这些方块的颜色:

http://i.imgur.com/kRGgR.png

现在乌龟只填充这些正方形的角落,而不是整个正方形.

这是我的代码:

import turtle
import time
import random

print ("This program draws shapes based on the number you enter in a uniform pattern.")
num_str = input("Enter the side number of the shape you want to draw: ")
if num_str.isdigit():
    squares = int(num_str)

angle = 180 - 180*(squares-2)/squares

turtle.up

x = 0 
y = 0
turtle.setpos(x,y)


numshapes = 8
for x in range(numshapes):
    turtle.color(random.random(),random.random(), random.random())
    x += 5
    y += 5
    turtle.forward(x)
    turtle.left(y)
    for i in range(squares):
        turtle.begin_fill()
        turtle.down()
        turtle.forward(40) …
Run Code Online (Sandbox Code Playgroud)

python turtle-graphics

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