python代码画房子---

需要资料及源码详解的可以加QQ群号
821400946

                         二层小楼楼阁

import turtle as t
import time
def go(x,y):
    t.penup()
    t.goto(x,y)
    t.pendown()
 def rangle(h,w):
    t.left(180)
    t.forward(h)
    t.right(90)
    t.forward(w)
    t.left(-90)
    t.forward(h)
def leftf(a,l):
    t.left(a)
    t.forward(l)
def rightr(a,l):
    t.right(a)
    t.forward(l)
def square(w,h):
    t.forward(h)
    t.right(90)
    t.forward(w)
    t.right(90)
    t.forward(h)
    t.right(90)
    t.forward(w)
t.pencolor("#2F4F4F")
t.hideturtle()
t.speed(100)
t.bgcolor("#48D1CC")
t.penup()
t.goto(-600,-250)
t.pendown()
t.forward(950)
t.goto(-400,-250)
t.fillcolor("#B0E0E6")
t.begin_fill()
t.left(90)
t.forward(15)
t.right(90)
t.forward(225)
t.left(-90)
t.forward(15)
#  门子
rangle(22,150)
rangle(15,225)
#   柱子
go(-385,-235)
rangle(15,23)
go(-383,-220)
rangle(100,18)
go(-385,-120)
t.left(90)
t.forward(23)
go(-385,-120)
t.right(90)
rangle(15,23)

go(-280,-235)
rangle(15,23)
go(-278,-220)
rangle(100,18)
go(-280,-120)
t.left(90)
t.forward(23)
go(-280,-120)
t.right(90)
rangle(15,23)

go(-160,-228)
rangle(15,23)
go(-158,-213)
rangle(93,18)
go(-160,-120)
t.left(90)
t.forward(23)
go(-160,-120)
t.right(90)
rangle(15,23)

go(-63,-228)
rangle(15,23)
go(-61,-213)
rangle(93,18)
go(-63,-120)
t.left(90)
t.forward(23)
go(-63,-120)
t.right(90)
rangle(15,23)

go(60,-235)
rangle(15,23)
go(62,-220)
rangle(100,18)
go(60,-120)
t.left(90)
t.forward(23)
go(60,-120)
t.right(90)
rangle(15,23)

go(162,-235)
rangle(15,23)
go(164,-220)
rangle(100,18)
go(162,-120)
t.left(90)
t.forward(23)
go(162,-120)
t.right(90)
rangle(15,23)
t.end_fill()

#顶部分
t.fillcolor("#F0E68C")
t.begin_fill()
go(-400,-105)
leftf(90,600)
leftf(90,10)
leftf(35,50)
leftf(55,538)
leftf(55,55)
leftf(35,6.5)
t.end_fill()
#三角形部分
t.fillcolor("#B0E0E6")
t.begin_fill()
go(-149,5)
leftf(150,103)
rightr(120,100)
rightr(90,10)
rightr(90,81)
leftf(120,85)
rightr(90,11.5)
go(-137,8)
leftf(120,76)
leftf(90,78)
leftf(90,76)
leftf(30,75.9)
leftf(120,81.2)
t.end_fill()

go(-120,-52)
leftf(120,45)
leftf(90,15)
leftf(90,45)
leftf(90,15)
t.fillcolor("#5F9EA0")
t.begin_fill()
go(-115,-37)
leftf(180,30)
rightr(90,30)
rightr(90,30)
rightr(90,30)
t.end_fill()
#窗子部分
go(-85,-7)
t.right(90)
t.circle(15,180)
leftf(90,30)
t.fillcolor("#B0E0E6")
t.begin_fill()
go(-320,-45)
t.left(90)
square(150,15)
t.end_fill()
t.fillcolor("#5F9EA0")
t.begin_fill()
go(-305,-30)
t.right(90)
square(120,25)
t.end_fill()
t.fillcolor("#5F9EA0")
t.begin_fill()
go(-305,-5)
t.right(90)
square(120,25)
t.end_fill()
go(-245,20)
t.left(90)
t.forward(50)
#窗子
go(-20,-45)
t.fillcolor("#B0E0E6")
t.begin_fill()
t.left(180)
square(150,15)
t.end_fill()
t.fillcolor("#5F9EA0")
t.begin_fill()
go(-5,-30)
t.right(90)
square(120,25)
t.end_fill()
t.fillcolor("#5F9EA0")
t.begin_fill()
go(-5,-5)
t.right(90)
square(120,25)
t.end_fill()
go(55,20)
t.left(90)
t.forward(50)
go(150,39)
t.forward(100)
#烟筒
go(-275,130)
t.left(180)
t.fillcolor("#B0E0E6")
t.begin_fill()
square(20,40)

go(-280,170)
t.right(90)
square(30,20)
t.end_fill()
go(-370,55)
rightr(180,110)
go(-250,55)
t.forward(35)
go(-205,55)
t.forward(80)
go(-67,55)
t.forward(120)
go(60,55)
t.forward(35)
go(100,53)
t.forward(60)
go(-395,-95)
t.forward(300)
go(-90,-95)
t.forward(35)
go(-40,-95)
t.forward(55)
go(25,-95)
t.forward(175)
#门
go(-70,-229)
leftf(90,90)
t.circle(30,180)
t.forward(90)
go(-80,-180)
t.fillcolor("#5F9EA0")
t.begin_fill()
t.circle(5,360)
t.end_fill()

                             动态小房子
import turtle as t

t.pensize(2)

t.speed(1)     #设置画画的速率

t.colormode(255)

t.pencolor("black")

t.begin_fill()

#房顶

t.fillcolor(0,245,255)

for i in range(3):

    t.forward(240)

    t.left(120)

t.end_fill()

#房顶阁楼窗户外框

t.penup()

t.goto(80,20)

t.pendown()

t.begin_fill()

t.fillcolor("white")

for i in range(4):

    t.forward(80)

    t.left(90)

t.end_fill()

#阁楼窗户内部的横线

t.penup()

t.goto(80,60)

t.pendown()

t.forward(80)

#阁楼窗户内部的竖线

t.penup()

t.goto(120,100)

t.pendown()

t.right(90)

t.forward(80)

t.right(90)

t.forward(80)

#房屋主体

t.left(90)

t.penup()

t.goto(0,0)

t.pendown()

t.begin_fill()

t.fillcolor(255,165,0)

for i in range(2):

    t.forward(240)

    t.left(90)

    t.forward(240)

    t.left(90)

t.end_fill()

#屋门

t.penup()

t.goto(30,-180)

t.pendown()

t.begin_fill()

t.fillcolor("blue")

for i in range(2):

    t.forward(50)

    t.left(90)

    t.forward(100)

    t.left(90)

t.end_fill()

#窗框

t.penup()

t.goto(140,-90)

t.pendown()

t.begin_fill()

t.fillcolor("white")

for i in range(4):

    t.forward(70)

    t.left(90)

t.end_fill()

#窗户上的竖线

t.penup()

t.goto(175,-90)

t.pendown()

t.left(90)

t.forward(70)

t.hideturtle()


                               简易房子


import turtle as t
t.pensize(2)
t.speed(1) #设置画画的速率
t.colormode(255)
t.pencolor("black")
t.begin_fill()#房顶
t.fillcolor(0,245,255)
for i in range(3):
t.forward(240)
t.left(120)
t.end_fill()#房顶阁楼窗户外框
t.penup()
t.goto(80,20)
t.pendown()
t.begin_fill()
t.fillcolor("white")
for i in range(4):
t.forward(80)
t.left(90)
t.end_fill()#阁楼窗户内部的横线
t.penup()
t.goto(80,60)
t.pendown()
t.forward(80)#阁楼窗户内部的竖线
t.penup()
t.goto(120,100)
t.pendown()
t.right(90)
t.forward(80)
t.right(90)
t.forward(80)#房屋主体
t.left(90)
t.penup()
t.goto(0,0)
t.pendown()
t.begin_fill()
t.fillcolor(255,165,0)
for i in range(2):
t.forward(240)
t.left(90)
t.forward(240)
t.left(90)
t.end_fill()#屋门
t.penup()
t.goto(30,-180)
t.pendown()
t.begin_fill()
t.fillcolor("blue")
for i in range(2):
t.forward(50)
t.left(90)
t.forward(100)
t.left(90)
t.end_fill()#窗框
t.penup()
t.goto(140,-90)
t.pendown()
t.begin_fill()
t.fillcolor("white")
for i in range(4):
t.forward(70)
t.left(90)
t.end_fill()#窗户上的竖线
t.penup()
t.goto(175,-90)
t.pendown()
t.left(90)
t.forward(70)
t.hideturtle()


在这里插入图片描述

from turtle import *
import random

def drawTree(length):
    if length>1:
        if length<30 and length>14:#缩小一下树干
            pensize(4)
        elif length<15 and length>5:#长度这个范围内那么就是绿叶
            color('#04B486')#
            pensize(3)
        elif length<5 and length>1:#红花
            color('#FE2E9A')
            pensize(2)
        else:
            color('#5E5E5E')#其他范围就是正常的树干
            pensize(5)
        #随机角度与长度
        randangle=2*random.random()
        randlen=2*random.random()
        
        #每次使用函数先绘制线段,再调整角度,这里是向右的角度转动
        fd(length)
        right(20*randangle)
        drawTree(length - 10*randlen)
        
        #这里是向左的角度转动
        left(40 * randangle)
        drawTree(length - 10*randlen)
        
        #为什么需要再向右转20度?那是因为我一共向左转了40度,使用backward后退,必须是相同的角度,不然退回去角度就不同了位置就不会对
        right(20 * randangle)

        up()
        backward(length)
        down()
def fallingFlowers(m):
    x,y=-1000,-750
    for i in range(30):
        up()
        goto(x,y)
        x+=100
        down()
        yval=50
        for i in range(m):
            a = 100*random.random()
            b = 2*random.random()
            print(a)
            if a>59:
                color('#FE2E9A')
            else:
                color('#04B486')
            circle(5)
            up()
            goto(x,y+(yval*b))
            fd(a)
            yval+=50
            down()      
            
setworldcoordinates(-1000,-750,1000,750)        
tracer(False)

fallingFlowers(10)#绘制落叶
bgcolor("#F5F6CE")
color('#5E5E5E')
pensize(5)

up()
goto(0,-700)#跳到绘制起始点
down()

left(80)
fd(140)
drawTree(120)

input()


  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是Python Turtle房子代码示例: ```python import turtle # 设置布大小和背景颜色 turtle.setup(600, 400) turtle.bgcolor('lightblue') # 房子的墙 turtle.penup() turtle.goto(-200, -100) turtle.pendown() turtle.color('white') turtle.begin_fill() for i in range(2): turtle.forward(400) turtle.left(90) turtle.forward(200) turtle.left(90) turtle.end_fill() # 房子的屋顶 turtle.penup() turtle.goto(-200, 100) turtle.pendown() turtle.color('brown') turtle.begin_fill() turtle.goto(, 200) turtle.goto(200, 100) turtle.goto(-200, 100) turtle.end_fill() # 房子的门 turtle.penup() turtle.goto(-50, -100) turtle.pendown() turtle.color('brown') turtle.begin_fill() turtle.forward(100) turtle.left(90) turtle.forward(150) turtle.left(90) turtle.forward(100) turtle.left(90) turtle.forward(150) turtle.end_fill() # 房子的窗户 turtle.penup() turtle.goto(-150, 50) turtle.pendown() turtle.color('brown') turtle.begin_fill() for i in range(4): turtle.forward(50) turtle.left(90) turtle.end_fill() turtle.penup() turtle.goto(100, 50) turtle.pendown() turtle.color('brown') turtle.begin_fill() for i in range(4): turtle.forward(50) turtle.left(90) turtle.end_fill() # 隐藏笔 turtle.hideturtle() # 等待用户关闭窗口 turtle.done() ``` 运行以上代码,即可在Turtle布上看到一个简单的房子。 ### 回答2: Python Turtle是一个Python模块,可以在窗口界面上绘制各种形状和图案,包括房子。以下是绘制房子Python Turtle代码: ``` import turtle # 定义函数矩形 def draw_rectangle(x, y, width, height): turtle.penup() turtle.goto(x, y) turtle.setheading(0) turtle.pendown() turtle.forward(width) turtle.right(90) turtle.forward(height) turtle.right(90) turtle.forward(width) turtle.right(90) turtle.forward(height) # 定义函数三角形 def draw_triangle(x, y, base, height): turtle.penup() turtle.goto(x, y) turtle.setheading(0) turtle.pendown() turtle.right(60) turtle.forward(base) turtle.right(120) turtle.forward(height) turtle.right(120) turtle.forward(base) # 绘制房子主体 draw_rectangle(-100, -100, 200, 200) # 绘制房顶三角形 draw_triangle(-100, 100, 200, 100) # 绘制窗户 draw_rectangle(-60, -60, 40, 40) draw_rectangle(20, -60, 40, 40) # 绘制门 draw_rectangle(-30, -100, 60, 100) # 结束绘制 turtle.done() ``` 以上代码中,我们首先定义了两个函数 `draw_rectangle` 和 `draw_triangle`,分别用于绘制矩形和三角形。然后我们调用这两个函数绘制房子主体、房顶、窗户和门。最后调用 `turtle.done()` 结束绘制过程。 因为Turtle默认绘制的线段较细,所以可以在开始时调用 `turtle.pensize()` 函数指定线段的粗细。此外,还可以通过 `turtle.bgcolor()` 函数设置背景色,通过 `turtle.color()` 函数设置笔颜色。 ### 回答3: Python的turtle模块是一个非常有趣的模块,它可以用来出各种各样的图形和图形,包括房子。以下是使用Python的turtle模块所编写的房子绘图代码。 首先,会引入turtle模块,调用Turtle对象和Screen对象。 ```python import turtle t = turtle.Turtle() s = turtle.Screen() ``` 接下来,我们会房子所需要的各个图形,例如正方形、三角形、矩形,以及门和窗户。 ```python # 正方形 t.forward(200) t.left(90) t.forward(200) t.left(90) t.forward(200) t.left(90) t.forward(200) t.left(90) # 三角形屋顶 t.penup() t.goto(0, 200) t.pendown() t.forward(100) t.left(120) t.forward(100) t.left(120) t.forward(100) # 矩形门 t.penup() t.goto(50,0) t.left(90) t.pendown() t.forward(50) t.left(90) t.forward(30) t.left(90) t.forward(50) t.left(90) t.forward(30) # 窗户 t.penup() t.goto(150, 100) t.pendown() t.forward(40) t.left(90) t.forward(40) t.left(90) t.forward(40) t.left(90) t.forward(40) t.left(90) ``` 最后,我们需要调用s.mainloop()方法,使窗口一直运行下去。 ```python s.mainloop() ``` 以上就是一个基本的绘制房子Python代码。你可以根据自己的喜好和想象力修改这个可视化绘制房子代码,例如改变颜色、增加花园等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值