利用Python如何画一颗心、小人发射爱心


Posted in Python onFebruary 21, 2021

源码:

#!/usr/bin/env python

# -*- 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(3)  # 画笔粗细

turtle.speed(1)  # 描绘速度

# 初始化画笔起始坐标

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()

效果图:

利用Python如何画一颗心、小人发射爱心

源码:

import turtle as t
from time import sleep
def go_to(x, y):
 t.up()
 t.goto(x, y)
 t.down()
def head(x, y, r):
 go_to(x, y)
 t.speed(20)
 t.circle(r)
 leg(x, y)
def leg(x, y):
 t.right(90)
 t.forward(180)
 t.right(30)
 t.forward(100)
 t.left(120)
 go_to(x, y - 180)
 t.forward(100)
 t.right(120)
 t.forward(100)
 t.left(120)
 hand(x, y)
def hand(x, y):
 go_to(x, y - 60)
 t.forward(100)
 t.left(60)
 t.forward(100)
 go_to(x, y - 90)
 t.right(60)
 t.forward(100)
 t.right(60)
 t.forward(100)
 t.left(60)
 eye(x, y)
def eye(x, y):
 go_to(x - 50, y + 130)
 t.right(90)
 t.forward(50)
 go_to(x + 40, y + 130)
 t.forward(50)
 t.left(90)
def big_Circle(size):
 t.speed(20)
 for i in range(150):
  t.forward(size)
  t.right(0.3)
def line(size):
 t.speed(20)
 t.forward(51 * size)
def small_Circle(size):
 t.speed(20)
 for i in range(210):
  t.forward(size)
  t.right(0.786)
def heart(x, y, size):
 go_to(x, y)
 t.left(150)
 t.begin_fill()
 line(size)
 big_Circle(size)
 small_Circle(size)
 t.left(120)
 small_Circle(size)
 big_Circle(size)
 line(size)
 t.end_fill()
def main():
 t.pensize(2)
 t.color('red', 'pink')
 head(-120, 100, 100)
 heart(250, -80, 1)
 go_to(100, -300)
 t.write("To: 智慧与美貌并存的", move=True, align="left", font=("楷体", 20, "normal"))
 t.done()
main()

效果图:

利用Python如何画一颗心、小人发射爱心

总结

到此这篇关于利用Python如何画一颗心、小人发射爱心的文章就介绍到这了,更多相关Python画小人发射爱心内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python切片知识解析
Mar 06 Python
python fabric实现远程部署
Jan 05 Python
Python 40行代码实现人脸识别功能
Apr 02 Python
Django中更改默认数据库为mysql的方法示例
Dec 05 Python
Python中format()格式输出全解
Apr 12 Python
PyQt5 closeEvent关闭事件退出提示框原理解析
Jan 08 Python
python+requests实现接口测试的完整步骤
Oct 27 Python
Python GUI库Tkiner使用方法代码示例
Nov 27 Python
Python性能测试工具Locust安装及使用
Dec 01 Python
如何用Python编写一个电子考勤系统
Feb 08 Python
pandas求平均数和中位数的方法实例
Aug 04 Python
python神经网络学习 使用Keras进行回归运算
May 04 Python
python 第三方库paramiko的常用方式
Feb 20 #Python
Python中Qslider控件实操详解
Feb 20 #Python
python基于selenium爬取斗鱼弹幕
Feb 20 #Python
Python爬虫+Tkinter制作一个翻译软件的示例
Feb 20 #Python
python爬虫用request库处理cookie的实例讲解
Feb 20 #Python
python 多线程爬取壁纸网站的示例
Feb 20 #Python
python 制作网站小说下载器
Feb 20 #Python
You might like
服务器变量 $_SERVER 的深入解析
2013/07/02 PHP
php实现将Session写入数据库
2015/07/26 PHP
PHP命名空间namespace的定义方法详解
2017/03/29 PHP
详解Yii2 之 生成 URL 的方法
2017/06/16 PHP
在 Laravel 中动态隐藏 API 字段的方法
2019/10/25 PHP
js压缩利器
2007/02/20 Javascript
JQUERY 浏览器判断实现函数
2009/08/20 Javascript
js截取函数(indexOf,join等)
2010/09/01 Javascript
js 在定义的时候立即执行的函数表达式(function)写法
2013/01/16 Javascript
jQuery中(function(){})()执行顺序的理解
2013/03/05 Javascript
jquery如何把数组变为字符串传到服务端并处理
2014/04/30 Javascript
js中的caller和callee属性介绍和例子
2014/06/07 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
2015/07/29 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
js选择器全面解析
2016/06/27 Javascript
jQuery遍历DOM的父级元素、子级元素和同级元素的方法总结
2016/07/07 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
2016/12/13 Javascript
浅谈JavaScript中promise的使用
2017/01/11 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
2017/03/02 Javascript
js实现多行文本框统计剩余字数功能
2017/03/28 Javascript
手把手教你用Node.js爬虫爬取网站数据的方法
2018/07/05 Javascript
[54:27]TNC vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python 图片验证码代码
2008/12/07 Python
Django入门使用示例
2017/12/12 Python
PyQt5每天必学之组合框
2018/04/20 Python
Python定时任务随机时间执行的实现方法
2019/08/14 Python
将matplotlib绘图嵌入pyqt的方法示例
2020/01/08 Python
可爱的童装和鞋子:Fabkids
2019/08/16 全球购物
车辆安全检查制度
2014/01/12 职场文书
交通局领导班子群众路线教育实践活动对照检查材料思想汇报
2014/10/09 职场文书
首席执行官观后感
2015/06/03 职场文书
《酸的和甜的》教学反思
2016/02/18 职场文书
公司开业的祝贺语大全(60条)
2019/07/05 职场文书
导游词之广东佛山(南风古灶)
2019/09/24 职场文书
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android