Python 用Transcrypt画一棵树
今天我想用Transcrypt在浏览器中绘制一棵树。 我有Python代码,它在Skulpt中工作:Python 用Transcrypt画一棵树,python,transcrypt,Python,Transcrypt,今天我想用Transcrypt在浏览器中绘制一棵树。 我有Python代码,它在Skulpt中工作: import random import turtle def tree(size, myTurtle): myTurtle.pensize(size / 20) if size < random.randint(1,2) * 20: myTurtle.color("green") else: myTurtle.color("br
import random
import turtle
def tree(size, myTurtle):
myTurtle.pensize(size / 20)
if size < random.randint(1,2) * 20:
myTurtle.color("green")
else:
myTurtle.color("brown")
if size > 5:
myTurtle.forward(size)
myTurtle.left(25)
tree(size - random.randint(10, 20), myTurtle)
myTurtle.right(50)
tree(size - random.randint(10, 20), myTurtle)
myTurtle.left(25)
myTurtle.penup()
myTurtle.backward(size)
myTurtle.pendown()
window = turtle.Screen()
window.setup(800,600)
window.bgcolor("white")
myTurtle = turtle.Turtle()
myTurtle.color("brown", "blue")
myTurtle.left(90)
myTurtle.speed(0)
myTurtle.penup()
myTurtle.setpos(0, -250)
myTurtle.pendown()
随机导入
进口海龟
def树(大小,myTurtle):
myTurtle.pensize(尺码/20)
如果尺寸5:
myTurtle.前进(尺寸)
我的乌龟。左(25)
树(大小-随机。随机数(10,20),myTurtle)
我的乌龟。对(50)
树(大小-随机。随机数(10,20),myTurtle)
我的乌龟。左(25)
我的乌龟
乌龟。向后(大小)
我的乌龟
window=turtle.Screen()
窗口设置(800600)
窗口颜色(“白色”)
myTurtle=海龟。海龟()
乌龟。颜色(“棕色”、“蓝色”)
我的乌龟。左(90)
我的乌龟。速度(0)
我的乌龟
myTurtle.setpos(0,-250)
我的乌龟
我想在浏览器中运行它以获得此效果:
不要担心树上的文字,它是波兰语;)
我在Skulpt中运行这个,也许你们听说了,你们有上面的效果。
现在我想在Transcrypt中运行它,并将其与Skulpt和Brython进行比较
正如你在这里看到的:
Transcrypt可以用海龟画画
使用Transcrypt时,此代码有什么变化
您能帮我做一下吗?首先:您需要对代码进行一些修改,因为
Transcrypt
中的某些函数有不同的名称或不存在。您必须添加turtle.done()
以显示结果
海龟树.py
import random
import turtle
def tree(size, myTurtle):
myTurtle.pensize(size / 20)
if size < random.randint(1,2) * 20:
myTurtle.color("green")
else:
myTurtle.color("brown")
if size > 5:
myTurtle.forward(size)
myTurtle.left(25)
tree(size - random.randint(10, 20), myTurtle)
myTurtle.right(50)
tree(size - random.randint(10, 20), myTurtle)
myTurtle.left(25)
myTurtle.up() # penup()
myTurtle.back(size) # backward(size)
myTurtle.down() # pendown()
#window = turtle.Screen() # doesn't exists
#window.setup(800,600) # doesn't exists
#window.bgcolor("white") # doesn't exists
myTurtle = turtle.Turtle()
myTurtle.color("brown", "blue")
myTurtle.left(90)
myTurtle.speed(0)
myTurtle.up() # penup()
myTurtle.goto(0, 250) # setpos(0, -250)
myTurtle.down() # pendown()
tree(135, myTurtle)
myTurtle.done() # display
将Python编译成JavaScript
transcrypt turtle_tree.py
您可以通过文件turtle\u tree.js
(和turtle\u tree.min.js
,turtle\u tree.mod.js
获得文件夹,但您现在不需要它)
您需要一个HTML文件,该文件加载turtle\u tree.js
,并具有
以显示结果
海龟树.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Turtle Tree</title>
<style>
#__turtlegraph__ {
height: 600px;
width: 800px;
}
</style>
</head>
<body>
<div id="__turtlegraph__"></div>
<script src='turtle_tree.js'></script>
</body>
</html>
乌龟树
#__套头衫{
高度:600px;
宽度:800px;
}
将HTML文件放入\uuuu javascript\uuuu
文件夹中,并在浏览器中打开它
在Python3.5.2/LinuxMint17.3/Firefox48.0上测试-它只需1秒(或更短时间)
Spróbujęcośpokombinowaći dam Ci znać(mam nadziejęe zaraz)。“编译并运行”在地址“”上发送代码,但收到的响应是“404页不存在”(PL:cośim nie działa)您似乎可以使用pip
安装Transcrypt,然后阅读如何生成可以在浏览器中运行的HTML页面。我也无法通过网站上的“编译并运行”来运行它。仅供参考:“编译并运行”在移植到新Transcrypt网站时被破坏,并且已修复。然而,使用Transcrypt的正常方法是在本地安装它,如furas所示。它是一个编译器,将在您的项目的_javascript__;子目录中生成一个.js。有关如何将其连接到HTML的示例,请参阅。Transcrypt在本地而不是在浏览器中编译的原因是为了获得精简、快速的页面Jacques de HoogeHi,我感兴趣的是Transcrypt的Turtle模块中最缺少哪些函数,因此可以添加它们。编译到JS时出现错误。transcrypt turtle_tree.py应该是“transcrypt”@Monica你是对的-我一直在transcrypt中写script
)@jacquesdhooge我不知道-我第一次用transcrypt。可能所有的别名都像backward
用于back
,penup
用于up
谢谢,我将在下一版本中添加这些别名。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Turtle Tree</title>
<style>
#__turtlegraph__ {
height: 600px;
width: 800px;
}
</style>
</head>
<body>
<div id="__turtlegraph__"></div>
<script src='turtle_tree.js'></script>
</body>
</html>