利用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 相关文章推荐
Pyhton中防止SQL注入的方法
Feb 05 Python
在Python程序中操作文件之flush()方法的使用教程
May 24 Python
解决每次打开pycharm直接进入项目的问题
Oct 28 Python
python使用pymongo操作mongo的完整步骤
Apr 13 Python
python动态进度条的实现代码
Jul 03 Python
opencv导入头文件时报错#include的解决方法
Jul 31 Python
python中如何实现将数据分成训练集与测试集的方法
Sep 13 Python
python学生信息管理系统实现代码
Dec 17 Python
Python字符编码转码之GBK,UTF8互转
Feb 09 Python
Python导入数值型Excel数据并生成矩阵操作
Jun 09 Python
python中upper是做什么用的
Jul 20 Python
python 批量压缩图片的脚本
Jun 02 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
PHP中定义数组常量(array常量)的方法
2014/11/17 PHP
CI映射(加载)数据到view层的方法
2016/03/28 PHP
PHP 匿名函数与注意事项详细介绍
2016/11/26 PHP
PHP那些琐碎的知识点(整理)
2017/05/20 PHP
使用dynatrace-ajax跟踪JavaScript的性能
2010/04/12 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
javascript学习笔记(十九) 节点的操作实现代码
2012/06/20 Javascript
20条学习javascript的编程规范的建议
2014/11/28 Javascript
javascript修改图片src的方法
2015/01/27 Javascript
jQuery插件zoom实现图片全屏放大弹出层特效
2015/04/15 Javascript
js时钟翻牌效果实现代码分享
2020/07/31 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
2015/09/14 Javascript
简单的Vue异步组件实例Demo
2017/12/27 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
2018/07/30 Javascript
JS打印彩色菱形的实例代码
2018/08/15 Javascript
JS插入排序简单理解与实现方法分析
2019/11/25 Javascript
小程序开发之模态框组件封装
2020/04/23 Javascript
Flask模拟实现CSRF攻击的方法
2018/07/24 Python
flask-socketio实现WebSocket的方法
2018/07/31 Python
django项目用higcharts统计最近七天文章点击量
2019/08/17 Python
pyqt5、qtdesigner安装和环境设置教程
2019/09/25 Python
Python 实现使用空值进行赋值 None
2020/03/12 Python
基于python判断字符串括号是否闭合{}[]()
2020/09/21 Python
原生 JS+CSS+HTML 实现时序图的方法
2019/07/31 HTML / CSS
美国汽车交易网站:Edmunds
2016/08/17 全球购物
澳大利亚在线家具店:Luxo Living
2019/03/24 全球购物
什么是serialVersionUID
2016/03/04 面试题
高中生毕业自我鉴定
2013/10/10 职场文书
学生学习总结的自我评价
2013/10/22 职场文书
军训学生自我鉴定
2014/02/12 职场文书
高中军训感言400字
2014/02/24 职场文书
教育基金募捐倡议书
2014/05/14 职场文书
复试通知单模板
2015/04/24 职场文书
地道战观后感
2015/06/04 职场文书
JavaWeb 入门:Hello Servlet
2021/07/16 Java/Android
Java Lambda表达式常用的函数式接口
2022/04/07 Java/Android