首页 > 编程语言 >Python编程:创意爱心表白代码集

Python编程:创意爱心表白代码集

时间:2024-10-11 15:21:55浏览次数:10  
标签:turtle 表白 Python 编程 setheading pendown penup forward 90

在寻找一种特别的方式来表达你的爱意吗?使用Python编程,你可以创造出独一无二的爱心图案,为你的表白增添一份特别的浪漫。这里为你精选了六种不同风格的爱心表白代码,让你的创意和情感通过代码展现出来。

话不多说,咱直接上代码!

1. 紫色浪漫:心形表白

在这里插入图片描述

#1-1导入turtle模块进行设计
import turtle
import time
 
#1-2画心形圆弧
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()  # 显示画笔
 
 
love = "听闻小姐治家有方,鄙人余生愿闻其详?" #input("请输入表白话语:")
signature = "先生" #input("请签署你的名字:")
date= "" #input("请写上日期:")
 
if love == '':
    love = 'I Love You'
 
#1-3初始化
turtle.setup(width=800, height=500)  # 窗口(画布)大小
turtle.color('black', 'Pink')  # 画笔颜色
turtle.pensize(5)  # 画笔粗细
turtle.speed(100)  # 描绘速度
# 初始化画笔起始坐标
move_pen_position(x=0, y=-180)  # 移动画笔位
turtle.left(140)  # 向左旋转140度
 
turtle.begin_fill()  # 标记背景填充位置
 
#1-4画图和展示
turtle.forward(224)  # 向前移动画笔,长度为224
# 画爱心圆弧
hart_arc()  # 左侧圆弧
turtle.left(120)  # 调整画笔角度
hart_arc()  # 右侧圆弧
# 画心形直线( 右下方 )
turtle.forward(224)
 
turtle.end_fill()  # 标记背景填充结束位置
 
move_pen_position(x=70, y=160)  # 移动画笔位置
turtle.left(185)  # 向左旋转180度
turtle.circle(-110,185)  # 右侧圆弧
# 画心形直线( 右下方 )
#turtle.left(20)  # 向左旋转180度
turtle.forward(50)
move_pen_position(x=-180, y=-180)  # 移动画笔位置
turtle.left(180)  # 向左旋转140度
 
# 画心形直线( 左下方 )
turtle.forward(600)  # 向前移动画笔,长度为224
 
# 在心形中写上表白话语
move_pen_position(0,50)  # 表白语位置
turtle.hideturtle()  # 隐藏画笔
turtle.color('#CD5C5C', 'pink')  # 字体颜色
# font:设定字体、尺寸(电脑下存在的字体都可设置)  align:中心对齐
turtle.write(love, font=('Arial', 20, 'bold'), align="center")
 
# 签写署名和日期
if (signature != '') & (date != ''):
    turtle.color('red', 'pink')
    time.sleep(2)
    move_pen_position(220, -180)
    turtle.hideturtle()  # 隐藏画笔
    turtle.write(signature, font=('Arial', 20), align="center")
    move_pen_position(220, -220)
    turtle.hideturtle()  # 隐藏画笔
    turtle.write(date, font=('Arial', 20), align="center")
 
#1-5点击窗口关闭程序
window = turtle.Screen()
window.exitonclick()

2. 爱意满满:Love2 I Love You

在这里插入图片描述

import turtle as t
import math as mt

if __name__ == "__main__":
    t.screensize(800,600,'white')
    t.pensize(10)
    t.speed(10)
    #爱心1
    t.color('black','pink')
    t.begin_fill()
    for i in range(-90,90,5):
        x=mt.cos(mt.radians(i))
        y=float(pow(mt.cos(mt.radians(i)),2/3))+float(mt.sin(mt.radians(i)))
        t.penup()
        # print(int(x*50)+10,int(y*50)+10)
        t.goto(int(x*50)+50,int(y*50)+30)
        t.pendown()
        t.forward(1)
        t.penup()
        t.goto(-int(x*50)+50,int(y*50)+30)
        t.pendown()
        t.forward(1)
        t.penup()
    t.end_fill()
    #爱心2
    t.goto(0,10)
    t.penup()
    t.begin_fill()
    for i in range(0,360,5):
        r=60*(1-mt.sin(mt.radians(i)))
        t.penup()
        t.left(5)
        t.forward(r)
        t.pendown()
        t.forward(1)
        t.penup()
        t.backward(r+1)
        t.pendown()
    t.end_fill()
    #L
    t.penup()
    t.goto(-200,0)
    t.left(90)
    t.begin_fill()
    t.pendown()
    t.forward(100)
    t.right(90)
    t.forward(20)
    t.right(90)
    t.forward(80)
    t.left(90)
    t.forward(40)
    t.right(90)
    t.forward(20)
    t.right(90)
    t.forward(60)
    t.end_fill()
    #o
    t.penup()
    t.goto(-80,0)
    t.pendown()
    t.begin_fill()
    t.circle(-50)
    t.end_fill()
    t.penup()
    t.color('pink','black')
    t.begin_fill()
    t.goto(-80,20)
    t.pendown()
    t.circle(-30)
    t.end_fill()
    t.color('black','pink')
    #E
    t.penup()
    t.goto(120, 0)
    t.right(180)
    t.left(90)
    t.begin_fill()
    t.pendown()
    t.forward(100)#上
    t.right(90)
    t.forward(60)#横
    t.right(90)
    t.forward(20)#竖
    t.right(90)
    t.forward(40)#横
    t.left(90)
    t.forward(20)#竖
    t.left(90)
    t.forward(40)#横
    t.right(90)
    t.forward(20)
    t.right(90)
    t.forward(40)
    t.left(90)
    t.forward(20)
    t.left(90)
    t.forward(40)
    t.right(90)
    t.forward(20)
    t.right(90)
    t.forward(60)
    t.end_fill()

    t.mainloop()

3. 红色热情:心形与文字结合

在这里插入图片描述

import turtle as t





def face(x, y):           #脸

    t.setheading(-90)

    t.penup()

    t.goto(x, y)

    t.pendown()

    t.backward(15)   # 左脸

    t.circle(70,-80)



    t.setheading(80)   # 左耳

    t.circle(-150, 15)

    t.circle(-15, 180)

    t.setheading(-115)

    t.circle(-150, 13)

    t.setheading(10)



    t.circle(-100,10)



    t.setheading(70)    # 右耳

    t.circle(-150, 20)

    t.circle(-15, 180)

    t.circle(-150, 16)

    t.setheading(10)



    t.setheading(160)   # 右脸

    t.circle(60, -130)



    t.setheading(-75)

    t.forward(40)



def word(x, y):             # “如何骗人”

    t.pensize(2)

    t.pencolor("black")

    t.setheading(0)

    t.penup()

    t.goto(x, y)

    t.pendown()



    t.forward(10)   # “如”

    t.penup()

    t.setheading(90)

    t.forward(8)

    t.pendown()

    t.setheading(-120)

    t.forward(15)

    t.setheading(-45)

    t.forward(12)



    t.penup()

    t.setheading(80)

    t.forward(15)

    t.pendown()

    t.setheading(-125)

    t.forward(16)



    t.penup()

    t.setheading(42)

    t.forward(16)

    t.pendown()

    t.setheading(-90)

    t.forward(10)

    t.penup()

    t.backward(11)

    t.pendown()

    t.setheading(0)

    t.forward(8)

    t.setheading(-90)

    t.forward(10)

    t.penup()

    t.setheading(180)

    t.forward(8)

    t.pendown()

    t.setheading(0)

    t.forward(8)



    t.penup()        # “何”

    t.goto(x+7,y-18)

    t.pendown()

    t.setheading(-135)

    t.forward(13)



    t.penup()

    t.goto(x+5, y - 20)

    t.pendown()

    t.setheading(-90)

    t.forward(16)



    t.penup()

    t.goto(x+11, y-18)

    t.pendown()

    t.setheading(0)

    t.forward(13)



    t.penup()

    t.goto(x+12, y-22)

    t.pendown()

    t.setheading(-90)

    t.forward(8)



    t.penup()

    t.goto(x + 12, y - 22)

    t.pendown()

    t.setheading(0)

    t.forward(6)

    t.setheading(-90)

    t.forward(8)



    t.penup()

    t.goto(x + 11, y - 31)

    t.pendown()

    t.setheading(0)

    t.forward(6)



    t.penup()

    t.goto(x + 21, y - 19)

    t.pendown()

    t.setheading(-90)

    t.forward(18)

    t.setheading(145)

    t.forward(5)



    t.penup()           # “骗”

    t.goto(x + 40, y+3)

    t.pendown()

    t.setheading(0)

    t.forward(10)

    t.setheading(-90)

    t.forward(7)



    t.penup()

    t.goto(x + 45, y + 3)

    t.pendown()

    t.setheading(-90)

    t.forward(10)

    t.setheading(0)

    t.forward(7)

    t.setheading(-100)

    t.forward(10)

    t.setheading(145)

    t.forward(4)



    t.penup()

    t.goto(x+38, y-12)

    t.pendown()

    t.setheading(0)

    t.forward(11)



    t.penup()

    t.goto(x+57, y+9)

    t.pendown()

    t.setheading(-45)

    t.forward(4)



    t.penup()

    t.goto(x+54, y+3)

    t.pendown()

    t.setheading(0)

    t.forward(13)

    t.setheading(-90)

    t.forward(5)

    t.setheading(180)

    t.forward(12)



    t.penup()

    t.goto(x + 54, y + 3)

    t.pendown()

    t.setheading(90)

    t.circle(90,-10)



    t.penup()

    t.goto(x + 56, y-5)

    t.pendown()

    t.setheading(-90)

    t.forward(11)



    t.penup()

    t.goto(x + 56, y - 5)

    t.pendown()

    t.setheading(0)

    t.forward(13)

    t.setheading(-90)

    t.forward(12)

    t.setheading(145)

    t.forward(4)



    t.penup()

    t.goto(x + 56, y - 10)

    t.pendown()

    t.setheading(0)

    t.forward(13)



    t.penup()

    t.goto(x + 56, y - 10)

    t.pendown()

    t.setheading(0)

    t.forward(13)



    t.penup()

    t.goto(x + 60, y - 4)

    t.pendown()

    t.setheading(-90)

    t.forward(10)

    t.penup()

    t.goto(x + 64, y - 4)

    t.pendown()

    t.setheading(-90)

    t.forward(10)



    t.penup()          # “人”

    t.goto(x + 60, y - 19)

    t.pendown()

    t.setheading(70)

    t.circle(50, -30)



    t.penup()

    t.goto(x + 56, y - 27)

    t.pendown()

    t.setheading(130)

    t.circle(-50, -20)



def book(x,y):           #书

    t.setheading(-90)

    t.penup()

    t.goto(x, y)

    t.fillcolor("red")

    t.begin_fill()

    t.pendown()

    t.forward(60)

    t.setheading(0)

    t.circle(-100, 25)

    t.setheading(90)

    t.forward(59)

    t.setheading(-25)

    t.circle(-100, -25)

    t.penup()

    t.setheading(-14)

    t.forward(46)

    t.pendown()

    t.setheading(15)

    t.circle(-100, 25)

    t.setheading(-90)

    t.forward(58)

    t.setheading(-11)

    t.circle(-105, -25)

    t.end_fill()



def eyes(x, y):         # 五官

    t.setheading(-20)

    t.penup()

    t.goto(x, y)

    t.pendown()

    t.forward(10)



    t.setheading(0)

    t.penup()

    t.forward(10)

    t.pendown()

    t.setheading(20)

    t.forward(10)



    t.setheading(-160)

    t.penup()

    t.forward(50)

    t.pendown()

    t.setheading(0)

    t.forward(15)



    t.penup()

    t.forward(25)

    t.pendown()

    t.forward(18)



    t.setheading(-145)

    t.penup()

    t.forward(45)

    t.pendown()

    t.setheading(0)

    t.forward(10)



def cheek(x, y):          #腮红

    t.setheading(0)

    for i in range(1, 4):

        t.color("pink")

        t.pensize(4)

        t.penup()

        t.right(110)

        t.goto(x, y)

        t.pendown()

        t.forward(9)

        t.left(110)

        x += 9

    t.pencolor("black")



def hands(x,y):     # 小手手

    t.penup()

    t.goto(x, y)

    t.pendown()



    t.fillcolor("white")

    t.begin_fill()

    t.circle(10)

    t.end_fill()



    t.penup()

    t.setheading(5)

    t.forward(120)

    t.pendown()

    t.fillcolor("white")

    t.begin_fill()

    t.setheading(-165)

    t.forward(35)

    t.circle(10,180)

    t.forward(15)

    t.end_fill()





def heart(x,y,z):      # 爱心

    t.setheading(110)

    t.pensize(2)

    t.pencolor("black")

    t.penup()

    t.goto(x,y)

    t.pendown()

    t.fillcolor("red")



    t.begin_fill()     #左半边



    t.circle(50,180)

    t.circle(180,37)



    t.left(46)      #右半边

    t.circle(180,37)

    t.circle(50, 182)



    t.end_fill()



def main():

    """

        主函数

    """

    t.pensize(0)

    t.speed(6)

    face(-95, 55)

    eyes(-45, 110)

    cheek(-80, 80)

    cheek(0, 80)

    book(-110, 55)

    hands(-110,5)

    word(-100,35)

    heart(150,0,1)

    t.hideturtle()

    t.exitonclick()

if __name__ == "__main__":

    main()

4. 爱的箭矢:一箭穿心效果

在这里插入图片描述

import turtle as t

t.color('white','red')

t.begin_fill()

t.width(5)

t.left(135)

t.fd(100)

t.right(180)

t.circle(50,-180)

t.left(90)

t.circle(50,-180)

t.right(180)

t.fd(100)

t.pu()

t.goto(50,-30)

t.pd()

t.right(90)

t.fd(100)

t.right(180)

t.circle(50,-180)

t.left(90)

t.circle(50,-180)

t.right(180)

t.fd(100)

t.end_fill()

t.hideturtle()

t.pu()

t.goto(250,-70)

t.pd()

t.color('black')

t.width(5)

t.left(70)

t.fd(50)

t.fd(-50)

t.left(70)

t.fd(50)

t.fd(-50)

t.left(145)

t.fd(20)

t.left(145)

t.fd(50)

t.fd(-50)

t.left(70)

t.fd(50)

t.fd(-50)

t.left(145)

t.fd(20)

t.left(145)

t.fd(50)

t.fd(-50)

t.left(70)

t.fd(50)

t.fd(-50)

t.left(145)

t.width(3)

t.fd(220)

t.right(90)

t.pu()

t.fd(10)

t.pd()

t.left(90)

t.circle(10,180)

t.circle(10,-90)

t.right(90)

t.fd(-10)

t.pu()

t.fd(90)

t.left(90)

t.fd(10)

t.left(90)

t.pd()

t.circle(10,180)

t.circle(10,-90)

t.left(90)

t.fd(100)

t.begin_fill()

t.left(30)

t.fd(15)

t.right(35)

t.fd(50)

t.right(150)

t.fd(50)

t.right(62)

t.fd(25)

t.end_fill()

t.done()

5. 一箭穿心文字版

在这里插入图片描述

from turtle import *
import turtle
from tkinter import *
import subprocess
import os
import random as ran


def Circlemove(size):
    for i in range(200):
        right(1)
        forward(1 * size)


def Heart(x, y, size):
    setturtle(x, y)
    speed(0.6)
    color('red', 'pink')
    begin_fill()
    left(140)
    forward(111.65 * size)
    Circlemove(size)
    left(120)
    Circlemove(size)
    forward(111.65 * size)
    end_fill()
    penup()


def setturtle(x, y):
    penup()
    goto(x, y)
    pendown()


def Line():
    speed(0.6)
    pensize(10)
    setheading(0)
    setturtle(-300, 0)
    left(12)
    forward(210)
    setturtle(80, 80)
    forward(150)


def LineHead():
    pensize(1)
    speed(0.5)
    color('red', 'red')
    begin_fill()
    left(120)
    forward(20)
    right(150)
    forward(35)
    right(120)
    forward(35)
    right(150)
    forward(20)
    end_fill()


def SavePicture():
    ts = getscreen()
    ts.getcanvas().postscript(file="520.ps", colormode='color')
    window = turtle.Screen()
    window.exitonclick()


def main():
    Love_Words = ["我喜欢的样子,你都有。"]
    Love_Letter = ["有你陪伴的日子,真好。", "遇见你,此生甚幸。"]
    Random_Number = ran.randint(0, len(Love_Words) - 1)
    setup(800, 600, 0, 0)
    getscreen().tracer(30, 0)
    hideturtle()
    pensize(3)
    color('black', 'pink')
    Heart(0, -25, 0.75)
    home()
    Heart(-80, -50, 1)
    Line()
    LineHead()
    pencolor("purple")
    speed(0.6)
    j = 0
    for i in Love_Words[Random_Number]:
        j = j + 1
        setturtle(j * 25 - 250, -150 + ran.randint(-1, 1) * 7)
        write(i, font=("楷体", 25, "normal"))
    j = 0
    pencolor("purple")
    for i in Love_Letter:
        j = j + 1
        setturtle(-400, 275 - j * 27)
        write(i, font=("楷体", 25, "normal"))
    pencolor('black')
    SavePicture()


if __name__ == '__main__':
    main()

6. 爱心一行代码:简洁表白

在这里插入图片描述

print('\n'.join([''.join([('Love'[(x-y) % len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)]))

标签:turtle,表白,Python,编程,setheading,pendown,penup,forward,90
From: https://blog.csdn.net/m0_73536593/article/details/142826777

相关文章

  • Python 装饰器
    Python装饰器1.装饰器是什么装饰器是Python中的一种高级函数,用于在不修改原始函数代码的前提下,动态地为函数或类增加功能。它本质上是一个函数,接受另一个函数或类作为参数,并返回一个新的函数或类。装饰器的基本语法defdecorator(func):defwrapper(*args,**kwargs)......
  • 【Shell】基础的 shell 脚本编程入门
    目录注意点数值计算(())letexprbc基础条件测试test中括号双中括号各种比较逻辑注意点通配符和正则表达式不同符号含义不同,特别是*这个符号通配符:零到无限多个字符的意思正则表达式:重复零到无限多个前一个字符的意思${name}#取出变量结果$(date)#在括......
  • 教你如何免费获取股票数据用python、JavaScript (Node.js)、JAVA等多种语言的实例代码
    ​近一两年来,股票量化分析逐渐受到广泛关注。而作为这一领域的初学者,首先需要面对的挑战就是如何获取全面且准确的股票数据。因为无论是实时交易数据、历史交易记录、财务数据还是基本面信息,这些数据都是我们进行量化分析时不可或缺的宝贵资源。我们的核心任务是从这些数据......
  • 4 联合编程
    4联合编程C#连接相机添加相关的VisionPro控件打开vs在工具箱中右键=>选择项=>勾选CogAcqFifoEditV2(配置相机)、CogRecordDisplay(图片展示工具)​​将上面添加的两个控件都拖到窗体的合适位置隐藏代码中配置如下代码//取相工具CogAcqFifoToolacqFifoTool......
  • centos7 安装Python3及配置环境变量
    centos7安装Python3并配置环境变量亲测有效python官网(linux下载地址、版本可自选):https://www.python.org/ftp/python/一、添加阿里云第三方扩展源仓库(安装拓展源仓库才能安装yum安装openssl11openssl11-devel,python源码编译必须要openssl11或以上版本)备注,我这里是把pyhto......
  • 首个 AI 编程认证课程上线!阿里云 AI Clouder 认证:基于通义灵码实现高效 AI 编码
    最近两年,随着大语言模型和生成式AI技术的爆火,软件开发领域首当其冲成为了最热门的大模型应用场景之一,通义灵码等AI辅助编程工具纷纷问世。这些工具通过自然语言处理和机器学习技术,能够理解开发者的意图,并且提供行级/函数级代码、单元测试和代码注释的智能生成等功能,极大地提......
  • 首个 AI 编程认证课程上线!阿里云 AI Clouder 认证:基于通义灵码实现高效 AI 编码
    最近两年,随着大语言模型和生成式AI技术的爆火,软件开发领域首当其冲成为了最热门的大模型应用场景之一,通义灵码等AI辅助编程工具纷纷问世。这些工具通过自然语言处理和机器学习技术,能够理解开发者的意图,并且提供行级/函数级代码、单元测试和代码注释的智能生成等功能,极大地提......
  • 雷达图怎么绘制?!超简单,一次性告诉你Python和R绘制方法~~
    今天给大家介绍的的图表为雷达图(Radar/Spiderchart),这种类型图表在生活中较常使用,是一种以从同一点开始的轴上表示的三个或更多个定量变量的二维图表的形式显示多变量数据的图形方法。较常用的场景多为分析企业经营状况(收益性、生产性、流动性、安全性和成长性)。本期推文......
  • python 09-pycharm连接远程服务器
    准备一个云服务器(linux操作系统)找一个免费试用的服务器用于练习,这里用这个服务器:在pycharm中连接服务器‌-VirtualEnvironment‌:‌Python的虚拟环境,‌允许每个项目拥有独立的库和解释器,‌避免依赖冲突。‌通过virtualenv等工具创建,‌适用于隔离项目依赖。‌‌-Sy......
  • Jupyter Notebook 中同时使用 Python 和 R
    要在JupyterNotebook中同时使用Python和R,可以通过rpy2库来实现。以下是具体步骤:安装rpy2(如果尚未安装):pipinstallrpy2在JupyterNotebook中加载R包:可以在Python代码单元中使用rpy2的importr函数来加载R包。下面是一个示例代码,展示如何加载neuroba......