使用turtle画故宫(伍奇,侯俊豪小组)
这个代码主要有两个部分,第一部分是画出故宫,第二部分是用random函数随机画心,故宫部分设置多个函数和循环再进行颜色填充即可完成。
from turtle import*
import random as r speed(0.4) def xy(x,y):
fd(x)
left(90)
fd(y)
left(90)
fd(x)
left(90)
fd(y)
left(90) colormode(255)
setup(900,900)
penup()
goto(-300,-250)
pensize(1)
pendown() begin_fill()
fillcolor(220,220,220)
xy(250,45)
fd(350)
xy(250,45)
end_fill() goto(-50,-250)
begin_fill()
fillcolor(211,77,80)
color(211,77,80)
xy(100,35)
end_fill() def little():
for i in range(9):
xy(12.5,7.5)
penup()
fd(25)
pendown()
penup()
goto(-275,-220)
pendown()
begin_fill()
fillcolor(211,77,80)
little()
penup()
forward(125)
pendown()
little()
end_fill() def zhuzhi():
for i in range(3):
xy(12.5,75)
penup()
fd(87.5)
pendown()
penup()
goto(-275,-205)
pendown()
begin_fill()
fillcolor(211,77,80)
zhuzhi()
fd(90)
zhuzhi()
end_fill() def cube():
for i in range(3):
for j in range(4):
fd(12.5)
left(90)
penup()
fd(87.5)
pendown() penup()
goto(-275,-160)
pendown()
begin_fill()
fillcolor(228,190,82)
cube()
fd(90)
cube()
end_fill() def fill():
for i in range(2):
begin_fill()
fillcolor(156,2,2)
xy(75,58)
end_fill()
penup()
fd(87.5)
pendown() penup()
goto(-262.5,-206)
pendown()
fill()
fd(176.5)
fill() penup()
goto(-87,-206)
pendown()
color(156,2,2)
begin_fill()
fillcolor(156,2,2)
fd(37)
right(90)
fd(10)
left(90)
fd(100)
left(90)
fd(10)
right(90)
fd(27)
left(90)
fd(58)
left(90)
fd(164)
left(90)
fd(58)
left(90)
end_fill() def huise():
for i in range(2):
xy(75,17.6)
penup()
fd(87.5)
pendown()
pencolor(177,172,137)
penup()
goto(-262.5,-148)
pendown()
begin_fill()
fillcolor(177,172,137)
huise()
fd(176.9)
huise()
goto(-87,-148)
xy(164,17.6)
end_fill() penup()
goto(-293,-130)
pendown()
color(65,66,77)
begin_fill()
fillcolor(65,66,77)
fd(570)
seth(45)
fd(20)
seth(180)
fd(590)
seth(-45)
fd(20)
seth(0)
end_fill() penup()
goto(-310,-115)
pendown()
pencolor(220,157,72)
begin_fill()
fillcolor(220,157,72)
fd(610)
circle(5,180)
fd(610)
circle(5,180)
end_fill() penup()
goto(-280,-104)
pendown()
pencolor(251,194,4)
begin_fill()
fillcolor(251,194,4)
fd(570)
seth(150)
fd(48)
seth(180)
fd(510)
seth(-150)
fd(48)
seth(0)
end_fill() goto(-264,-80)
pencolor(65,66,67)
begin_fill()
fillcolor(65,66,67)
xy(510,8)
end_fill()
penup()
goto(-248,-72)
pendown()
def heise():
for i in range(7):
xy(8,20)
penup()
fd(79)
pendown()
begin_fill()
fillcolor(65,66,67)
heise()
end_fill() penup()
goto(-264,-52)
pendown()
begin_fill()
fillcolor(65,66,67)
fd(510)
seth(45)
fd(20)
seth(180)
fd(536)
seth(-45)
fd(20)
seth(0)
end_fill() penup()
goto(-240,-72)
pendown()
def huise1():
for i in range(6):
xy(71,20)
penup()
fd(79)
pendown()
begin_fill()
fillcolor(177,172,137)
huise1()
end_fill() penup()
goto(-15,-80)
pendown()
begin_fill()
fillcolor(218,153,66)
xy(30,42)
end_fill() penup()
goto(-10,-73)
pendown()
begin_fill()
fillcolor(42,6,194)
xy(20,28)
end_fill() penup()
goto(-285,-38)
pendown()
begin_fill()
fillcolor(220,157,72)
fd(560)
circle(5,180)
fd(560)
circle(5,180)
end_fill() penup()
goto(-195,-28)
pendown()
begin_fill()
fillcolor(251,194,4)
fd(458)
seth(135)
fd(70)
seth(180)
fd(438)
seth(-135)
fd(70)
seth(0)
end_fill() penup()
goto(-220,21)
pendown()
begin_fill()
fillcolor(220,157,72)
fd(435)
seth(90)
fd(20)
circle(5,180)
fd(6)
seth(180)
fd(417)
seth(90)
fd(6)
circle(5,180)
fd(20)
end_fill() colormode(1.0) def randomcolor():
color = (r.random(), r.random(), r.random())
return color def pink():
color = (1, r.random(), 1)
return color def randomrange(min, max):
return r.randint(min,max) def heart(r, a):
factor = 180
seth(a)
circle(-r, factor)
fd(2 * r)
right(90)
fd(2 * r)
circle(-r, factor) pensize(1)
pencolor(randomcolor())
fillcolor(randomcolor()) penup()
for i in range(20):
goto(randomrange(-400, 400), randomrange(140, 420))
begin_fill()
fillcolor(pink())
heart(randomrange(10, 50), randomrange(-10, 90))
end_fill() done()
使用turtle画故宫(伍奇,侯俊豪小组)的更多相关文章
- python运用turtle 画出汉诺塔搬运过程
python运用turtle 画出汉诺塔搬运过程 1.打开 IDLE 点击File-New File 新建立一个py文件 2.向py文件中输入如下代码 import turtle class Stac ...
- python3 turtle 画国际象棋棋盘
python3 turtle 画国际象棋棋盘 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan import turt ...
- day 03 turtle 画鹅
turtle 画鹅 import turtle t=turtle turtle.speed(10) t. setup(800,600) #画头 turtle.penup() turtle.goto(0 ...
- *【Python】【demo实验31】【练习实例】【使用turtle画小猪佩奇】
如下图小猪佩奇: 要求使用turtle画小猪佩奇: 源码: # encoding=utf-8 # -*- coding: UTF-8 -*- # 使用turtle画小猪佩奇 from turtle i ...
- 【Python】【demo实验29】【练习实例】【使用turtle画五角星】
原题: 使用turtle画五角星: 我的代码: #!/usr/bin/python # encoding=utf-8 # -*- coding: UTF-8 -*- from turtle impor ...
- 用python turtle画玫瑰
1.turtle 库 2.画玫瑰的代码: import turtle turtle.penup() turtle.left() turtle.fd() turtle.pendown() turtle. ...
- Python之turtle画同心圆和棋盘
画饼图 import turtle t = turtle.Pen() for i in range(5): t.penup() t.goto(0, -i*30) t.pendown() t.circl ...
- 用python的turtle画分形树
由于分形树具有对称性,自相似性,所以我们可以用递归来完成绘制.只要确定开始树枝长.每层树枝的减短长度和树枝分叉的角度,我们就可以把分形树画出来啦!! 代码如下: # -*- coding: utf-8 ...
- python 用turtle 画小猪佩奇
from turtle import * def nose(x,y):#鼻子 penup()#提起笔 goto(x,y)#定位 pendown()#落笔,开始画 setheading(-30)#将乌龟 ...
随机推荐
- WebAPI前置知识:HTTP与RestfulAPI
对HTTP协议的基本了解是能理解并使用RestFul风格API的基础,在了解了这些基础之后,使用各种RestFul的开发框架才能得心应手.我一开始使用WebApi的时候就因为对这些知识缺乏了解,觉得用 ...
- structure streaming笔记
基于micro-batch, spark2.3之后, 支持continues processing 基于spark SQL 如同在静态table上运行标准批查询一样表现流计算, spark 通过在一个 ...
- hadoop配置项笔记 - hdfs
hadoop版本:3.1.1 core-site.xml dfs.namenode.rpc-address 作用:rpc地址.我在使用distcp时显式使用到了. 默认值:port是8020 我的设置 ...
- SVN导出差异版本更新的文件列表
对于在服务器上没有使用版本控制的运维人员来说,每次SVN修改的文件都需要查看更改日志,一个个查找出来再更新到服务器,过程实在是痛苦 那么有没有一种方法跑个命令比对一下版本就哗啦啦的把修改好的文件复制出 ...
- npm ERR! File exists: /XXX/xxx npm ERR! Move it away, and try again.
今天抽空将我的静态服务 ks-server 之前留下的 bug(在node低版本情况下报错)维护了一下. 当我重新 npm link 时,如下错误: npm WARN ks-server@1.0.2 ...
- java导出excel 浏览器直接下载或者或以文件形式导出
/** * excel表格直接下载 */ public static void exportExcelByDownload(HSSFWorkbook wb,HttpServletResponse ht ...
- linux中的wc命令
linux中wc命令用法 Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 1.命令格式: wc [选项]文件... 2.命令功能: ...
- 2018-2019-2 网络对抗技术 20165303 Exp1 PC平台逆向破解(BOF实验)
1.实践目的 本次实践的对象是一个名为pwn1的linux可执行文件. 三个实践内容如下: 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 利用foo函数的Bof漏洞,构造一个 ...
- jmeter系列-如何实现像loadrunner一样,多个并发用户先通过登录初始化,然后做并发的接口性能压测
自动转开发后,就很少关注性能测试方面的东西,最近在帮朋友做一个性能压测,由于朋友那边的公司比较小,环境比较简单,而且是对http服务进行的压测,所以最终 选用了jmeter来实现这个压测. 如下就是我 ...
- 8.6 GOF设计模式四: 策略模式… Strategy Pattern
策略模式… Strategy Pattern 在POS系统中,有时需要实行价格优惠, 该如何处理? 对普通客户或新客户报全价 对老客户统一折扣5% 对大客户统一折扣10% 注:课件 ...