ホームページ >バックエンド開発 >Python チュートリアル >Pythonを使ってクリスマスツリーを描くにはどうすればよいですか? (詳しいコード説明)

Pythonを使ってクリスマスツリーを描くにはどうすればよいですか? (詳しいコード説明)

angryTom
angryTom転載
2020-02-13 09:56:54101455ブラウズ

Python を使用してクリスマス ツリーを描くにはどうすればよいですか?この記事では、Python を使用してクリスマス ツリーを描画するいくつかの方法を紹介し、Python のクリスマス ツリー コードと操作レンダリングを添付します。

Pythonを使ってクリスマスツリーを描くにはどうすればよいですか? (詳しいコード説明)

Python クリスマス ツリー コード

1. クリスマス ツリーの簡単な描画

新しいツリーの作成1 .py または次のコードを直接入力して実行します (推奨学習: Python ビデオ チュートリアル )

#声明树的高度
height = 5
#树的雪花数,初始为1
stars = 1
#以数的高度作为循环次数
 
for i in range(height):
    print((' ' * (height - i)) + ('*' * stars))
    stars += 2
#输出树干
print((' ' * height) + '|')

Pythonを使ってクリスマスツリーを描くにはどうすればよいですか? (詳しいコード説明)

#2. タートルを使用して簡単なオブジェクトを描画しますクリスマス ツリー

新しい Tree2py を作成し、次のコードを入力します。

#导入turtle库
import turtle
#设置屏幕大小
screen = turtle.Screen()
screen.setup(800,600)
#获取画笔并设置一些属性:圆形、红色、快
circle = turtle.Turtle()
circle.shape('circle')
circle.color('red')
circle.speed('fastest')
#抬起画笔
circle.up()
#重新获取画笔
square = turtle.Turtle()
#重新设置画笔属性:四方形、绿色、快
square.shape('square')
square.color('green')
square.speed('fastest')
#重新抬起画笔
square.up()
#跳到指定坐标位置
circle.goto(0,280)
#复制当前图形
circle.stamp()
k = 0
for i in range(1, 17):
    y = 30*i
    for j in range(i-k):
        x = 30*j
        square.goto(x,-y+280)
        square.stamp()
        square.goto(-x,-y+280)
        square.stamp()
    if i % 4 == 0:
        x = 30*(j+1)
        circle.color('red')
        circle.goto(-x,-y+280)
        circle.stamp()
        circle.goto(x,-y+280)
        circle.stamp()
        k += 2
    if i % 4 == 3:
        x = 30*(j+1)
        circle.color('yellow')
        circle.goto(-x,-y+280)
        circle.stamp()
        circle.goto(x,-y+280)
        circle.stamp()
square.color('brown')
for i in range(17,20):
    y = 30*i
    for j in range(3):
        x = 30*j
        square.goto(x,-y+280)
        square.stamp()
        square.goto(-x,-y+280)
        square.stamp()
turtle.exitonclick()

実行:

Pythonを使ってクリスマスツリーを描くにはどうすればよいですか? (詳しいコード説明)

WeChat パブリック アカウント: php 中国語オンライン コース をフォローし、sd または Christmas と返信して、クリスマス特殊効果コードをさらに入手してください。

(WeChat でスキャン)

3. Turtle を使用して複雑なクリスマス ツリーを描画します

新しいtree3.pyを作成し、次のコードを入力します

#导入所依赖的库
from turtle import *
import random
import time
 
n = 80.0
#设置速度快
speed("fastest")
#背景颜色 海贝壳色,偏粉色
screensize(bg='seashell')
left(90)
forward(3*n)
color("orange", "yellow")
begin_fill()
left(126)
 
for i in range(5):
    forward(n/5)
    right(144)
    forward(n/5)
    left(72)
end_fill()
right(126)
 
color("dark green")
backward(n*4.8)
def tree(d, s):
    if d <= 0: return
    forward(s)
    tree(d-1, s*.8)
    right(120)
    tree(d-3, s*.5)
    right(120)
    tree(d-3, s*.5)
    right(120)
    backward(s)
tree(15, n)
backward(n/2)
 
for i in range(200):
    a = 200 - 400 * random.random()
    b = 10 - 20 * random.random()
    up()
    forward(b)
    left(90)
    forward(a)
    down()
    if random.randint(0, 1) == 0:
            color(&#39;tomato&#39;)
    else:
        color(&#39;wheat&#39;)
    circle(2)
    up()
    backward(a)
    right(90)
    backward(b)
time.sleep(60)

実行:

Pythonを使ってクリスマスツリーを描くにはどうすればよいですか? (詳しいコード説明)

##推奨学習:

pythonチュートリアル

以上がPythonを使ってクリスマスツリーを描くにはどうすればよいですか? (詳しいコード説明)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。