520专属——使用Python代码表白究竟能不能成功?

简介: 520,谐音:“我爱你”,一直觉得,520真正的意义,不单是用于表达爱,也不是为了收礼物和红包,而是提醒我们,不要忘记爱与被爱。废话不多说,下面整理了9个效果图和参考代码,感兴趣的朋友可以看看

520,谐音:“我爱你”,一直觉得,520真正的意义,不单是用于表达爱,也不是为了收礼物和红包,而是提醒我们,不要忘记爱与被爱。

废话不多说,下面整理了9个效果图和参考代码,感兴趣的朋友可以看看

注:本次展示的效果图不一定能表白成功,还需结合实际情况和另一半的想法,有优秀案例的可以在评论区分享

一、浪漫玫瑰花

实现代码:

from turtle import *
import time
setup(1000,800,0,0)
speed(0)
penup()
seth(90)
fd(340)
seth(0)
pendown()
speed(5)
begin_fill()
fillcolor('red')
circle(50,30)
for i in range(10):
    fd(1)
    left(10)
circle(40,40)
for i in range(6):
    fd(1)
    left(3)
circle(80,40)
for i in range(20):
    fd(0.5)
    left(5)
circle(80,45)
for i in range(10):
    fd(2)
    left(1)
circle(80,25)
for i in range(20):
    fd(1)
    left(4)
circle(50,50)
time.sleep(0.1)
circle(120,55)
speed(0)
seth(-90)
fd(70)
right(150)
fd(20)
left(140)
circle(140,90)
left(30)
circle(160,100)
left(130)
fd(25)
penup()
right(150)
circle(40,80)
pendown()
left(115)
fd(60)
penup()
left(180)
fd(60)
pendown()
end_fill()
right(120)
circle(-50,50)
circle(-20,90)
speed(1)
fd(75)
speed(0)
circle(90,110)
penup()
left(162)
fd(185)
left(170)
pendown()
circle(200,10)
circle(100,40)
circle(-52,115)
left(20)
circle(100,20)
circle(300,20)
speed(1)
fd(250)
penup()
speed(0)
left(180)
fd(250)
circle(-300,7)
right(80)
circle(200,5)
pendown()
left(60)
begin_fill()
fillcolor('green')
circle(-80,100)
right(90)
fd(10)
left(20)
circle(-63,127)
end_fill()
penup()
left(50)
fd(20)
left(180)
pendown()
circle(200,25)
penup()
right(150)
fd(180)
right(40)
pendown()
begin_fill()
fillcolor('green')
circle(-100,80)
right(150)
fd(10)
left(60)
circle(-80,98)
end_fill()
penup()
left(60)
fd(13)
left(180)
pendown()
speed(1)
circle(-200,23)
exitonclick()

什么?只有玫瑰花太单调?那再给你来几个爱心够不够?

二、浪漫玫瑰加爱心

1716188827782.jpg

实现代码:

import turtle
import time
import random
# 爱心函数
def yellowheart(x, y, liftx):
    turtle.pensize(3)
    turtle.speed(10)
    turtle.color("red", "red")
    turtle.up()
    turtle.goto(x, y)
    turtle.down()
    turtle.begin_fill()
    turtle.left(liftx)
    turtle.fd(80)
    turtle.circle(-40, 180)
    turtle.left(90)
    turtle.circle(-40, 180)
    turtle.left(0)
    turtle.fd(80)
    turtle.end_fill()
def rose():
    turtle.speed(0)  # 画笔移动的速度
    #turtle.tracer(False)
    # 设置初始位置
    turtle.penup()  # 提起画笔
    turtle.left(90)  # 逆时针转动画笔90度
    turtle.fd(200)
    turtle.pendown()  # 放下画笔,移动画笔即开始绘制
    turtle.right(90)
    # 设置画笔的大小
    turtle.pensize(2)
    # 花蕊
    turtle.fillcolor("red")  # 填充颜色
    turtle.begin_fill()  # 开始填充
    turtle.circle(10, 180)
    turtle.circle(25, 110)
    turtle.left(50)
    turtle.circle(60, 45)
    turtle.circle(20, 170)
    turtle.right(24)
    turtle.fd(30)
    turtle.left(10)
    turtle.circle(30, 110)
    turtle.fd(20)
    turtle.left(40)
    turtle.circle(90, 70)
    turtle.circle(30, 150)
    turtle.right(30)
    turtle.fd(15)
    turtle.circle(80, 90)
    turtle.left(15)
    turtle.fd(45)
    turtle.right(165)
    turtle.fd(20)
    turtle.left(155)
    turtle.circle(150, 80)
    turtle.left(50)
    turtle.circle(150, 90)
    turtle.end_fill()  # 结束填充
    # 右侧花瓣
    turtle.left(150)
    turtle.circle(-90, 70)
    turtle.left(20)
    turtle.circle(75, 105)
    turtle.setheading(60)
    turtle.circle(80, 98)
    turtle.circle(-90, 40)
    # 左侧花瓣
    turtle.left(180)
    turtle.circle(90, 40)
    turtle.circle(-80, 98)
    turtle.setheading(-83)
    # 左侧叶子
    turtle.fd(30)
    turtle.left(90)
    turtle.fd(25)
    turtle.left(45)
    turtle.fillcolor("green")
    turtle.begin_fill()
    turtle.circle(-80, 90)
    turtle.right(90)
    turtle.circle(-80, 90)
    turtle.end_fill()
    turtle.right(135)
    turtle.fd(60)
    turtle.left(180)
    turtle.fd(85)
    turtle.left(90)
    turtle.fd(80)
    # 右侧叶子
    turtle.right(90)
    turtle.right(45)
    turtle.fillcolor("green")
    turtle.begin_fill()
    turtle.circle(80, 90)
    turtle.left(90)
    turtle.circle(80, 90)
    turtle.end_fill()
    turtle.left(135)
    turtle.fd(60)
    turtle.left(180)
    turtle.fd(60)
    turtle.right(90)
    turtle.circle(200, 50)  # 画一个圆 200 是半径,50 是弧度
    time.sleep(1)
    # turtle.tracer(False)
    #turtle.pensize(3)
    #turtle.speed(0)
    turtle.color("red", "red")
    turtle.up()
    turtle.goto(-230, 50)
    turtle.down()
    turtle.begin_fill()
    turtle.left(180)
    turtle.fd(80)
    turtle.circle(-40, 180)
    turtle.left(90)
    turtle.circle(-40, 180)
    turtle.left(0)
    turtle.fd(80)
    turtle.end_fill()
    time.sleep(1)
    # turtle.tracer(False)
    #turtle.pensize(3)
    #turtle.speed(0)
    turtle.color("red", "red")
    turtle.up()
    turtle.goto(-230, -80)
    turtle.down()
    turtle.begin_fill()
    turtle.left(-30)
    turtle.fd(80)
    turtle.circle(-40, 180)
    turtle.left(90)
    turtle.circle(-40, 180)
    turtle.left(0)
    turtle.fd(80)
    turtle.end_fill()
    time.sleep(1)
    # turtle.tracer(False)
    # turtle.pensize(3)
    # turtle.speed(0)
    turtle.color("red", "red")
    turtle.up()
    turtle.goto(-130, -180)
    turtle.down()
    turtle.begin_fill()
    turtle.left(-80)
    turtle.fd(80)
    turtle.circle(-40, 180)
    turtle.left(90)
    turtle.circle(-40, 180)
    turtle.left(0)
    turtle.fd(80)
    turtle.end_fill()
    time.sleep(1)
    # turtle.tracer(False)
    # turtle.pensize(3)
    # turtle.speed(0)
    turtle.color("red", "red")
    turtle.up()
    turtle.goto(200, -200)
    turtle.down()
    turtle.begin_fill()
    turtle.left(-90)
    turtle.fd(80)
    turtle.circle(-40, 180)
    turtle.left(90)
    turtle.circle(-40, 180)
    turtle.left(0)
    turtle.fd(80)
    turtle.end_fill()
    time.sleep(1)
    # turtle.tracer(False)
    # turtle.pensize(3)
    # turtle.speed(0)
    turtle.color("red", "red")
    turtle.up()
    turtle.goto(200, 50)
    turtle.down()
    turtle.begin_fill()
    turtle.left(90)
    turtle.fd(80)
    turtle.circle(-40, 180)
    turtle.left(90)
    turtle.circle(-40, 180)
    turtle.left(0)
    turtle.fd(80)
    turtle.end_fill()
def figure1():
    turtle.reset()
    turtle.tracer(False)
    rose()
    yellowheart(-230, 50, 180)  # 左一
    #time.sleep(2)
def figure2():
    # turtle.reset()
    turtle.tracer(False)
    rose()
    yellowheart(-230, -80, -30)     # 左二
    # time.sleep(2)
def figure3():
    turtle.reset()
    turtle.tracer(False)
    rose()
    yellowheart(-130, -180, -30)    # 左三
    # time.sleep(2)
def figure4():
    turtle.reset()
    turtle.tracer(False)
    rose()
    yellowheart(200, 50, 90)        # 右一
    # ime.sleep(2)
def figure5():
    turtle.reset()
    turtle.tracer(False)
    rose()
    yellowheart(200, -200, -90)  # 右二
    # time.sleep(2)
if __name__ == "__main__":
    rose()
    # figure1()
    #
    # yellowheart(-230, -80, -30)  # 左二
    # 不让自动退出,放在程序的最后一行
    # 不然画画结束后会自动退出
    turtle.done()
coding:utf-8

三、心心相印

1716188883991.jpg

实现代码:

from turtle import *
from time import sleep
def go_to(x, y):
    up()
    goto(x, y)
    down()
def small_Circle(size):  # 函数用于绘制心的小圆
    speed(10)
    for i in range(210):
        forward(size)
        right(0.786)
def big_Circle(size):  # 函数用于绘制心的大圆
    speed(10)
    for i in range(150):
        forward(size)
        right(0.3)
def line(size):
    speed(10)
    forward(51 * size)
def heart(x, y, size):
    go_to(x, y)
    left(150)
    begin_fill()
    line(size)
    big_Circle(size)
    small_Circle(size)
    left(120)
    small_Circle(size)
    big_Circle(size)
    line(size)
    end_fill()
def main():
    pensize(2)
    color('red', 'pink')
    getscreen().tracer(1, 0)
    heart(100, 0, 0.7)
    go_to(80, 70)
    write("先生", font=("楷体", 18, "normal"))
    setheading(0)
    heart(-80, -100, 1)
    go_to(-110, 15)
    write("小姐", font=("宋体", 20, "normal"))
    go_to(40, -80)
    write("三生有幸遇见你!", move=True, align="left", font=("arial", 22, "italic"))
    done()
main()

四、粉嫩爱心

1716188931039.jpg

实现代码:

'''不正经爱心'''
#coding=utf-8
import turtle
import time
def draw_circle():
    for i in range(400):
        turtle.right(0.5)
        turtle.forward(1)
def draw_love():
    #    turtle.color('red','darkred')
    #    turtle.pensize(1)
    turtle.pen(fillcolor="pink", pencolor="red", pensize=8)
    turtle.speed(2000)
    turtle.goto(0, 0)
    turtle.begin_fill()
    turtle.left(140)
    turtle.forward(224)
    draw_circle()
    turtle.left(120)
    draw_circle()
    turtle.forward(224)
    turtle.end_fill()
    turtle.write("I Love you")
    time.sleep(2)
    turtle.up()
    turtle.goto(150, 20)
    turtle.color('black')
    turtle.write('纵然万劫不复,纵然相思入骨,我待你依旧如初!', font=("微软雅黑", 18, "normal"))
    time.sleep(2)
def draw_abc():
    turtle.fillcolor("pink")
    turtle.pencolor("red")
    turtle.pensize(10)
    turtle.speed(1)
    turtle.up()
    turtle.goto(0, -50)
    turtle.down()
    turtle.begin_fill()
    turtle.circle(45)
    turtle.end_fill()
    time.sleep(2)
 
def word():
    turtle.up()
    turtle.goto(-100, 200)
    turtle.color("red")
    turtle.pensize(4)
    #   turtle.down()
    turtle.write('宝贝,5.20快乐!', font=("隶书", 18, "bold"))
    time.sleep(10)
draw_love()
draw_abc()
word()

五、丘比特一键穿心

1716188965296.jpg

程序代码:

import turtle as t
t.color('red','pink')
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()

六、发射爱心小人

1716188989333.jpg

实现代码:

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

七、浪漫动态樱花树

1716189015442.jpg

实现代码:

import turtle as T
import random
import time
# 画樱花的躯干(60,t)
def Tree(branch, t):
    time.sleep(0.0005)
    if branch > 3:
        if 8 <= branch <= 12:
            if random.randint(0, 2) == 0:
                t.color('snow')  # 白
            else:
                t.color('lightcoral')  # 淡珊瑚色
            t.pensize(branch / 3)
        elif branch < 8:
            if random.randint(0, 1) == 0:
                t.color('snow')
            else:
                t.color('lightcoral')  # 淡珊瑚色
            t.pensize(branch / 2)
        else:
            t.color('sienna')  # 赭(zhě)色
            t.pensize(branch / 10)  # 6
        t.forward(branch)
        a = 1.5 * random.random()
        t.right(20 * a)
        b = 1.5 * random.random()
        Tree(branch - 10 * b, t)
        t.left(40 * a)
        Tree(branch - 10 * b, t)
        t.right(20 * a)
        t.up()
        t.backward(branch)
        t.down()
# 掉落的花瓣
def Petal(m, t):
    for i in range(m):
        a = 200 - 400 * random.random()
        b = 10 - 20 * random.random()
        t.up()
        t.forward(b)
        t.left(90)
        t.forward(a)
        t.down()
        t.color('lightcoral')  # 淡珊瑚色
        t.circle(1)
        t.up()
        t.backward(a)
        t.right(90)
        t.backward(b)
# 绘图区域
t = T.Turtle()
# 画布大小
w = T.Screen()
t.hideturtle()  # 隐藏画笔
t.getscreen().tracer(5, 0)
w.screensize(bg='wheat')  # wheat小麦
t.left(90)
t.up()
t.backward(150)
t.down()
t.color('sienna')
# 画樱花的躯干
Tree(60, t)
# 掉落的花瓣
Petal(200, t)
w.exitonclick()

八、专属心形词云

实现代码:

from wordcloud import WordCloud
import PIL.Image as image
import numpy as np
import jieba
# 分词
def trans_CN(text):
    # 接收分词的字符串
    word_list = jieba.cut(text)
    # 分词后在单独个体之间加上空格
    result = " ".join(word_list)
    return result
# 要读取的txt文本
with open("love.txt", encoding="utf-8") as fp:
    text = fp.read()
    # print(text)
    # 将读取的中文文档进行分词
    text = trans_CN(text)
    mask = np.array(image.open("love.png"))     #添加心形图片
    wordcloud = WordCloud(
        # 添加遮罩层
        mask=mask,
        # 生成中文字的字体,必须要加,不然看不到中文
        font_path="C:\Windows\Fonts\STXINGKA.TTF"
    ).generate(text)
    image_produce = wordcloud.to_image()
    image_produce.show()

九、女朋友画像字符画

实现代码:

from PIL
import Image, ImageDraw, ImageFont
def draw(pic, draw_text):
    img = cv2.imread(pic)
blank = Image.new("RGB", [img.shape[1],
    img.shape[0]
], "white")
drawObj = ImageDraw.Draw(blank)
n = 10
m = 9
font = ImageFont.truetype(font_path,
    size = m)
for i in range(0, img.shape[0], n):
    for j in range(0, img.shape[1], n):
    drawObj.text(
        [j, i],
        draw_text[int(j / n) % len(draw_text)],
        fill = (img[i][j][2], img[i][j][1],
            img[i][j][0]),
        font = font
    )
blank.save('img_' + pic)
draw('1.jpg', "我爱你")

到这里就结束了,有能力的朋友可以在上面代码的基础上重新设计优化一下,没能力的朋友可以期待一下评论区小伙伴们的分享

相关文章
|
5月前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
275 26
|
5月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
478 1
|
5月前
|
机器学习/深度学习 算法 调度
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
294 1
|
4月前
|
测试技术 Python
Python装饰器:为你的代码施展“魔法”
Python装饰器:为你的代码施展“魔法”
311 100
|
4月前
|
开发者 Python
Python列表推导式:一行代码的艺术与力量
Python列表推导式:一行代码的艺术与力量
483 95
|
5月前
|
Python
Python的简洁之道:5个让代码更优雅的技巧
Python的简洁之道:5个让代码更优雅的技巧
298 104
|
5月前
|
开发者 Python
Python神技:用列表推导式让你的代码更优雅
Python神技:用列表推导式让你的代码更优雅
550 99
|
4月前
|
缓存 Python
Python装饰器:为你的代码施展“魔法
Python装饰器:为你的代码施展“魔法
214 88
|
5月前
|
IDE 开发工具 开发者
Python类型注解:提升代码可读性与健壮性
Python类型注解:提升代码可读性与健壮性
313 102
|
4月前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。
882 68

推荐镜像

更多