python编程画心_Python用turtle画爱心丘比特之剑

程序员的爱情,在Python中运用调用turtle库来根据函数画出爱心。

效果图如下:

19032013501450.png

from turtle import*

setup(750,500)

penup()

pensize(25)

pencolor("pink")

fd(-230)

seth(90)

pendown()

circle(-50,180)

circle(50,-180)

circle(75,-50)

circle(-190,-45)

penup()

fd(185)

seth(180)

fd(120)

seth(90)

pendown()

circle(-75,-50)

circle(190,-45)

penup()

fd(184)

seth(0)

fd(80)

seth(90)

pendown()

circle(-50,180)

circle(50,-180)

circle(75,-50)

circle(-190,-45)

penup()

fd(185)

seth(180)

fd(120)

seth(90)

pendown()

circle(-75,-50)

circle(190,-45)

penup()

fd(150)

seth(180)

fd(300)

pencolor("red")

pensize(10)

pendown()

fd(-500)

seth(90)

fd(30)

fd(-60)

seth(30)

fd(60)

seth(150)

fd(60)

done()

Python使用turtle库画一个爱心构成的爱心

#!/usr/bin/env python

# coding:utf-8

from turtle import *

import time

def setTurtle():

# 窗口大小

screensize(900, 700, 'pink')

# 颜色

color('red', 'pink')

# 笔粗细

pensize(3)

# 速度

speed(6)

# 提笔

penup()

def getStart(h):

# 去到的坐标,窗口中心为0,0

goto(0, -180)

r = h / 5

drawBigL(r, h)

drawBigArc(r, 140)

drawBigArc(r, 70)

drawBigR(r, h)

centerRange()

drawHope()

drawName()

def drawBigL(r, h):

colors = ['red', 'orange', 'yellow', '#87CEEB', 'violet', 'red']

for i in range(int(240 / h) + 1):

seth(0)

color(colors[i], colors[i + 1])

drawHeart(r)

seth(140)

fd(h)

def drawBigArc(r, rad):

colors = ['red', 'orange', 'yellow', 'SkyBlue', 'violet', 'red']

for i in range(50):

if (i % 10 == 0):

color(colors[int(i / 10)], colors[int(i / 10) + 1])

seth(0)

drawHeart(r)

seth(rad - (i + 1) * 4)

rt(4)

fd(10.5)

def drawBigR(r, h):

colors = ['red', 'orange', 'yellow', 'SkyBlue', 'violet', 'red']

for i in range(int(240 / h) + 1):

color(colors[i], colors[i + 1])

seth(0)

drawHeart(r)

setheading(220)

fd(h)

def drawHeart(r):

down()

begin_fill()

factor = 180

seth(45)

circle(-r, factor)

fd(2 * r)

right(90)

fd(2 * r)

circle(-r, factor)

end_fill()

up()

# 在心中写字

def centerRange():

for i in range(6):

drawCenter(i)

time.sleep(1)

def drawCenter(i):

goto(0, 0)

colors = ['red', 'orange', 'yellow', 'SkyBlue', 'violet', 'red']

pencolor(colors[i])

# 在心中写字 font可以设置字体自己电脑有的都可以设 align开始写字的位置

write('love SPY', font=('gungsuh', 30,), align="center")

up()

# 写寄语

def drawHope():

pencolor('black')

goto(-300, -220)

showturtle()

write('Linux公社(LinuxIDC.com),', font=('华文行楷', 25,), align="center", move=True)

goto(-300, -270)

write('Linux公社是专业的Linux系统门户网站。', font=('华文行楷', 25,), align="center", move=True)

# 写署名

def drawName():

pencolor('black')

goto(250, -250)

showturtle()

write('Linux公社 网址 www.linuxidc.com', font=('gungsuh', 20,), align="center", move=True)

setTurtle()

getStart(80)

# 点击窗口关闭

window = Screen()

window.exitonclick()

19032014006744.png

logo.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您展示如何用 PythonTurtle 模块丘比特之箭。下面是整个 Python 图示代码: ```python import turtle # 设置turtle.penup() turtle.setheading(90) turtle.goto(0, -200) turtle.pendown() # 箭身 turtle.pensize(20) turtle.goto(0, 100) turtle.goto(80, 150) turtle.goto(-80, 150) turtle.goto(0, 100) # 箭头 turtle.pensize(1) turtle.begin_fill() turtle.goto(80, 150) turtle.goto(60, 200) turtle.goto(-60, 200) turtle.goto(-80, 150) turtle.end_fill() # 完成turtle.hideturtle() turtle.done() ``` 解释: - `import turtle`:导入 Turtle 模块。 - `turtle.penup()`:将笔抬起。 - `turtle.setheading(90)`:设置初始角度为 90 度,即朝上。 - `turtle.goto(0, -200)`:将笔移动到坐标 (0, -200)。 - `turtle.pendown()`:将笔落下,开始图。 - `turtle.pensize(20)`:设置笔粗细为 20。 - `turtle.goto(0, 100)`:一个垂直箭身的线段。 - `turtle.goto(80, 150)` 和 `turtle.goto(-80, 150)`:分别两个倾斜箭身的线段。 - `turtle.goto(0, 100)`:一个垂直箭身的线段,形成箭身。 - `turtle.pensize(1)`:设置笔粗细为 1。 - `turtle.begin_fill()`:开始填充箭头。 - `turtle.goto(80, 150)` 和 `turtle.goto(60, 200)`:分别两个斜线段。 - `turtle.goto(-60, 200)` 和 `turtle.goto(-80, 150)`:分别两个斜线段。 - `turtle.end_fill()`:结束填充箭头。 - `turtle.hideturtle()`:隐藏笔。 - `turtle.done()`:保持面不关闭。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值