python画圣诞树代码解读_python画,圣诞树,花,爱,Python,绘图,爱心,Turtle,篇
1.画圣诞树
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()
2.画樱花
import turtle as T
import random
import time
# 画樱花的躯干(60,t)
def Tree(branch, t):
time.sleep(0.0005)
if branch > 3:
if 8 <= branch <= 12:
if random.randint(0, 2) == 0:
t.color('snow') # 白
else:
t.color('lightcoral') # 淡珊瑚色
t.pensize(branch / 3)
elif branch < 8:
if random.randint(0, 1) == 0:
t.color('snow')
else:
t.color('lightcoral') # 淡珊瑚色
t.pensize(branch / 2)
else:
t.color('sienna') # 赭(zhě)色
t.pensize(branch / 10) # 6
t.forward(branch)
a = 1.5 * random.random()
t.right(20 * a)
b = 1.5 * random.random()
Tree(branch - 10 * b, t)
t.left(40 * a)
Tree(branch - 10 * b, t)
t.right(20 * a)
t.up()
t.backward(branch)
t.down()
# 掉落的花瓣
def Petal(m, t):
for i in range(m):
a = 200 - 400 * random.random()
b = 10 - 20 * random.random()
t.up()
t.forward(b)
t.left(90)
t.forward(a)
t.down()
t.color('lightcoral') # 淡珊瑚色
t.circle(1)
t.up()
t.backward(a)
t.right(90)
t.backward(b)
# 绘图区域
t = T.Turtle()
# 画布大小
w = T.Screen()
t.hideturtle() # 隐藏画笔
t.getscreen().tracer(5, 0)
w.screensize(bg='white') # wheat小麦
t.left(90)
t.up()
t.backward(150)
t.down()
t.color('sienna')
# 画樱花的躯干
Tree(60, t)
# 掉落的花瓣
Petal(200, t)
w.exitonclick()
3.画一箭穿心
from turtle import*
color ("black","red")
pensize(5)
begin_fill()
penup()
goto(50,50)
pendown()
right(45)
goto(100,0)
left(90)
fd(120)
circle(50,225)
penup()
goto(0,0)
pendown()
left(135)
fd(120)
circle(50,225)
seth(90)
circle(50,225)
fd(121)
end_fill()
left(56)
penup()
goto(-210,40)
pendown()
goto(0,80)
penup()
goto(160,110)
pendown()
goto(320,140)
done()
4.画爱心
# -*- coding:utf-8 -*-
import turtle
import time
# 画心形圆弧
def hart_arc():
for i in range(200):
turtle.right(1)
turtle.forward(2)
def move_pen_position(x, y):
turtle.hideturtle() # 隐藏画笔(先)
turtle.up() # 提笔
turtle.goto(x, y) # 移动画笔到指定起始坐标(窗口中心为0,0)
turtle.down() # 下笔
turtle.showturtle() # 显示画笔
# 初始化
turtle.setup(width=800, height=500) # 窗口(画布)大小
turtle.color('red', 'pink') # 画笔颜色
turtle.pensize(2) # 画笔粗细
turtle.speed(0.5) # 描绘速度
# 初始化画笔起始坐标
move_pen_position(x=0,y=-180) # 移动画笔位置
turtle.left(140) # 向左旋转140度
turtle.begin_fill() # 标记背景填充位置
# 画心形直线( 左下方 )
turtle.forward(224) # 向前移动画笔,长度为224
# 画爱心圆弧
hart_arc() # 左侧圆弧
turtle.left(120) # 调整画笔角度
hart_arc() # 右侧圆弧
# 画心形直线( 右下方 )
turtle.forward(224)
turtle.end_fill() # 标记背景填充结束位置
# 点击窗口关闭程序
window = turtle.Screen()
window.exitonclick()
5.画玫瑰花
'''
Created on Nov 18, 2017
@author: QiZhao
'''
import turtle
# 设置初始位置
turtle.penup()
turtle.left(90)
turtle.fd(200)
turtle.pendown()
turtle.right(90)
# 花蕊
turtle.fillcolor("red")
turtle.begin_fill()
turtle.circle(10,180)
turtle.circle(25,110)
turtle.left(50)
turtle.circle(60,45)
turtle.circle(20,170)
turtle.right(24)
turtle.fd(30)
turtle.left(10)
turtle.circle(30,110)
turtle.fd(20)
turtle.left(40)
turtle.circle(90,70)
turtle.circle(30,150)
turtle.right(30)
turtle.fd(15)
turtle.circle(80,90)
turtle.left(15)
turtle.fd(45)
turtle.right(165)
turtle.fd(20)
turtle.left(155)
turtle.circle(150,80)
turtle.left(50)
turtle.circle(150,90)
turtle.end_fill()
# 花瓣1
turtle.left(150)
turtle.circle(-90,70)
turtle.left(20)
turtle.circle(75,105)
turtle.setheading(60)
turtle.circle(80,98)
turtle.circle(-90,40)
# 花瓣2
turtle.left(180)
turtle.circle(90,40)
turtle.circle(-80,98)
turtle.setheading(-83)
# 叶子1
turtle.fd(30)
turtle.left(90)
turtle.fd(25)
turtle.left(45)
turtle.fillcolor("green")
turtle.begin_fill()
turtle.circle(-80,90)
turtle.right(90)
turtle.circle(-80,90)
turtle.end_fill()
turtle.right(135)
turtle.fd(60)
turtle.left(180)
turtle.fd(85)
turtle.left(90)
turtle.fd(80)
# 叶子2
turtle.right(90)
turtle.right(45)
turtle.fillcolor("green")
turtle.begin_fill()
turtle.circle(80,90)
turtle.left(90)
turtle.circle(80,90)
turtle.end_fill()
turtle.left(135)
turtle.fd(60)
turtle.left(180)
turtle.fd(60)
turtle.right(90)
turtle.circle(200,60)
# time.sleep(3)
6.画太极
#引入turtle函数库
from turtle import *
#定义画半个太极图的函数,第一个参数radius是大圆的半径,
#color1,color2分别是两种填充颜色,对应图形中的黑白填充
def draw(radius, color1,color2):
#设置画笔粗细
width(3)
#设置画笔颜色和填充颜色
color("black",color1)
#准备开始填充图形
begin_fill()
#首先画一个半径为radius/2,弧度为180的半圆,画的是红线所示半圆
circle(radius/2,180)
#画一个半径为radius,弧度为180的半圆,画的是黄线所示半圆
circle(radius,180)
#将画笔方向旋转180度
left(180)
#画一个半径为radius/2,弧度为180的半圆,此时半径值为负,
#圆心在画笔的右边,画的是绿线所示半圆
circle(-radius/2,180)
#结束填充
end_fill()
#画笔向左旋转90度,正好指向画板上方
left(90)
#抬起画笔,再运动时不会留下痕迹
up()
#向前移动radius*0.35,这样小圆边线距离大圆边线上下各radius*0.35,
#小圆的半径就为radius*0.15
forward(radius*0.35)
#画笔向右旋转90度,指向画板右侧
right(90)
#放下画笔
down()
color(color2,color2)
#开始画内嵌小圆,如蓝线所示
begin_fill()
circle(radius*0.15)
end_fill()
#旋转画笔90度,指向画板上方
left(90)
up()
#后退radius*0.35
backward(radius*0.35)
down()
#旋转画笔90度,指向画板左方
left(90)
#定义主函数
def main():
#设置窗口或者画板大小
setup(500,500)
#绘制黑色一半,白色内圆
draw(200,"black","white")
#绘制白色一半,黑色内圆
draw(200,"white","black")
#隐藏画笔
ht()
main()
秒变大牛,就是这么简单~
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。
微信群(关注「
Python家庭
」一起轻松学Python吧)
QQ ②群(
983031854
)
python画圣诞树代码解读_python画,圣诞树,花,爱,Python,绘图,爱心,Turtle,篇相关推荐
- python画圣诞树代码解读_实战 | 教你用Python画各种版本的圣诞树
项目介绍 大家好呀,这是一份迟到的圣诞节Python专辑项目. 我们一起看看如何用Python做出超级炫酷的圣诞树吧~ 1.入门版本 height = 5 stars = 1 for i in ran ...
- python画圣诞树代码解读_使用Python画了一棵圣诞树的实例代码
分享给大家一篇文章,教你怎样用Python画了一棵圣诞树,快来学习. 如何用Python画一个圣诞树呢? 最简单: height = 5 stars = 1 for i in range(heig ...
- python画图库哪个好_python画图库
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我默默的用python画了下面这张图. 依稀记得女同事看了之后,立刻转身离去,并 ...
- python画中秋的月亮_Python画月饼,云上过中秋,天池Python入门案例系列赛开启
原标题:Python画月饼,云上过中秋,天池Python入门案例系列赛开启 阿里云天池推出了一个Python入门案例系列教程,在此之前他们还推出了一个Python基础训练营. 在天池龙珠计划Pytho ...
- python画k线图_python画k线图
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! import datetime import pandas_datareader ...
- python怎么发送代码文件_python 通过 socket 发送文件的实例代码
目录结构: client: #!/usr/bin/env python # -*-coding:utf-8 -*- import socket, struct, json download_dir = ...
- python乘法表代码注释_Python统计python文件中代码,注释及空白对应的行数示例【测试可用】...
本文实例讲述了Python实现统计python文件中代码,注释及空白对应的行数.分享给大家供大家参考,具体如下: 其实代码和空白行很好统计,难点是注释行 python中的注释分为以#开头的单行注释 或 ...
- python的函数代码块_Python从菜鸟到高手(8):print函数、赋值与代码块
1.神奇的print函数 print函数相信读者一定对它不陌生,因为在前面的章节,几乎每个例子都使用了print函数,这个函数的功能就是在控制台输出文本.不过print在输出文本时还可以进行一些设置, ...
- python炫酷动画源代码_Python小技巧:如何用Python代码发一个炫酷的朋友圈
相信很多朋友在发朋友圈的时候,都会发一些话语,有些还会配一张图,但是普通的配图怎么符合我们程序员的身份呢?发出去都觉得没牌面,应该整点技术性的活. 今天给大家带来一个项目,这个小项目只用50行代码就能 ...
最新文章
- 换个角度聊系统稳定性建设
- docker-compose 安装方法
- [概统]本科二年级 概率论与数理统计 第五讲 二元随机变量
- 资源大集中 浪潮I9000刀片为国家税务总局打造全能型平台
- iOS蓝牙开发CoreBluetooth快速入门
- Android得到一个闹钟在第三方
- Eclipse单行和多行注释快捷键以及撤销注释
- UVA750 UVALive5358 8 Queens Chess Problem题解
- android5.1不生成odex
- Ubuntu使用Flux调节色温保护眼睛
- 最近很多人问我:saiku下载不下来
- 华为服务器修改硬盘显示顺序,服务器硬盘顺序
- Qt Quick Dialogs
- iOS 局域网内搜索硬件设备
- JavaScript遍历数组和对象
- JAVA:实现QuickSort快速排序算法(附完整源码)
- 台大郭彦甫_MATLAB视频笔记(六)图形界面_GUI程序设计
- 06 ,拉格朗日函数 :
- 初学MSP430F5529定时器
- 程序员的自我修养------勘误表
热门文章
- HNUST - 数据库课设
- 模拟电子技术基础实验6.5
- SCI论文怎么投,投稿流程和经验分享一文了解
- 韩国三星现原形,不如华为有储备能抗压力,所谓技术大佬名不副实
- 【历史上的今天】3 月 14 日:微软发布 IE9;黑莓创始人出生;圆周率计算创造新纪录
- 数据分析学习(一)数据分析和Numpy基础
- 一条狗的死亡,引发3亿网友愤怒!希望这条黑科技 “汪星人” 能从小培养人的爱心 | 钛空智慧星球推荐
- 信息技术自主创新的分级模型
- 01 【初识Django】
- mysql relay log是什么意思_master log 与relay log的关系