+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2019-03(1)

2019-04(1)

2019-06(1)

2019-07(5)

2019-08(120)

用Python画一颗心、小人发射爱心(附源码)

发布于2021-02-20 07:38     阅读(1012)     评论(0)     点赞(2)     收藏(3)


0

1

2

3

4

先画一个爱心,

源代码:


#!/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()

小人发射爱心源码

程序运行截图

 


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: Python青灯教育", move=True, align="left", font=("楷体", 20, "normal"))
    t.done()
main()

原文链接:https://www.cnblogs.com/python147/p/14417646.html

0

1

2

3

4



所属网站分类: 技术文章 > 博客

作者:喵喵喵

链接: https://www.pythonheidong.com/blog/article/837462/cbabf4e5f5e7cc2f97cb/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

2 0
收藏该文
已收藏

评论内容:(最多支持255个字符)