暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

python-520表白代码,我看谁说程序员不懂浪漫,送你几套表白代码,一步到位

运维家 2022-05-21
1269

520到了,还被女朋友问送什么礼物吗?鲜花?口红?看电影?很俗的好不好,给你女朋友一个程序员的Surprise
吧,来来来,让你用代码撩妹子。啥?没有女朋友?没有女朋友更应该看了,用来表白不香嘛?

1、引言

什么什么?你女朋友不懂代码?没有编译环境?这叫事儿嘛,以下你看到的所有代码,我都给你打包成电脑一键运行exe
程序,双击就完事儿。就问你女朋友喜不喜欢,文章末尾自取即可。

我还在每个文件夹中写了使用说明,你确定不要吗?尤其是最后一个,非常好看哦。

2、代码列表

  • 浪漫玫瑰
  • 浪漫玫瑰加爱心
  • 你中有我,我中有你
  • 浪漫小树
  • 用女朋友照片,绘制心形
  • 电脑弹窗表白
  • 字符画-用字符画出来你女朋友(尤其是这个,我最喜欢了)

3、浪漫玫瑰

成品展示


源代码

from turtle import *
import time

setup(100080000)
speed(0)
penup()
seth(90)
fd(340)
seth(0)
pendown()

speed(5)
begin_fill()
fillcolor('red')
circle(5030)

for i in range(10):
    fd(1)
    left(10)

circle(4040)

for i in range(6):
    fd(1)
    left(3)

circle(8040)

for i in range(20):
    fd(0.5)
    left(5)

circle(8045)

for i in range(10):
    fd(2)
    left(1)

circle(8025)

for i in range(20):
    fd(1)
    left(4)

circle(5050)

time.sleep(0.1)

circle(12055)

speed(0)

seth(-90)
fd(70)

right(150)
fd(20)

left(140)
circle(14090)

left(30)
circle(160100)

left(130)
fd(25)

penup()
right(150)
circle(4080)
pendown()

left(115)
fd(60)

penup()
left(180)
fd(60)
pendown()

end_fill()

right(120)
circle(-5050)
circle(-2090)

speed(1)
fd(75)

speed(0)
circle(90110)

penup()
left(162)
fd(185)
left(170)
pendown()
circle(20010)
circle(10040)
circle(-52115)
left(20)
circle(10020)
circle(30020)
speed(1)
fd(250)

penup()
speed(0)
left(180)
fd(250)
circle(-3007)
right(80)
circle(2005)
pendown()

left(60)
begin_fill()
fillcolor('green')
circle(-80100)
right(90)
fd(10)
left(20)
circle(-63127)
end_fill()

penup()
left(50)
fd(20)
left(180)

pendown()
circle(20025)

penup()
right(150)

fd(180)

right(40)
pendown()
begin_fill()
fillcolor('green')
circle(-10080)
right(150)
fd(10)
left(60)
circle(-8098)
end_fill()

penup()
left(60)
fd(13)
left(180)

pendown()
speed(1)
circle(-20023)

exitonclick()

4、浪漫玫瑰加爱心

成品展示


源代码

import turtle
import time


# 爱心函数
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(-40180)
    turtle.left(90)
    turtle.circle(-40180)
    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(10180)
    turtle.circle(25110)
    turtle.left(50)
    turtle.circle(6045)
    turtle.circle(20170)
    turtle.right(24)
    turtle.fd(30)
    turtle.left(10)
    turtle.circle(30110)
    turtle.fd(20)
    turtle.left(40)
    turtle.circle(9070)
    turtle.circle(30150)
    turtle.right(30)
    turtle.fd(15)
    turtle.circle(8090)
    turtle.left(15)
    turtle.fd(45)
    turtle.right(165)
    turtle.fd(20)
    turtle.left(155)
    turtle.circle(15080)
    turtle.left(50)
    turtle.circle(15090)
    turtle.end_fill()  # 结束填充

    # 右侧花瓣
    turtle.left(150)
    turtle.circle(-9070)
    turtle.left(20)
    turtle.circle(75105)
    turtle.setheading(60)
    turtle.circle(8098)
    turtle.circle(-9040)

    # 左侧花瓣
    turtle.left(180)
    turtle.circle(9040)
    turtle.circle(-8098)
    turtle.setheading(-83)

    # 左侧叶子
    turtle.fd(30)
    turtle.left(90)
    turtle.fd(25)
    turtle.left(45)
    turtle.fillcolor("green")
    turtle.begin_fill()
    turtle.circle(-8090)
    turtle.right(90)
    turtle.circle(-8090)
    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(8090)
    turtle.left(90)
    turtle.circle(8090)
    turtle.end_fill()

    turtle.left(135)
    turtle.fd(60)
    turtle.left(180)
    turtle.fd(60)
    turtle.right(90)
    turtle.circle(20050)  # 画一个圆 200 是半径,50 是弧度

    time.sleep(1)
    # turtle.tracer(False)
    # turtle.pensize(3)
    # turtle.speed(0)
    turtle.color("red""red")
    turtle.up()
    turtle.goto(-23050)
    turtle.down()
    turtle.begin_fill()
    turtle.left(180)
    turtle.fd(80)
    turtle.circle(-40180)
    turtle.left(90)
    turtle.circle(-40180)
    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(-40180)
    turtle.left(90)
    turtle.circle(-40180)
    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(-40180)
    turtle.left(90)
    turtle.circle(-40180)
    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(-40180)
    turtle.left(90)
    turtle.circle(-40180)
    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(20050)
    turtle.down()
    turtle.begin_fill()
    turtle.left(90)
    turtle.fd(80)
    turtle.circle(-40180)
    turtle.left(90)
    turtle.circle(-40180)
    turtle.left(0)
    turtle.fd(80)
    turtle.end_fill()


def figure1():
    turtle.reset()
    turtle.tracer(False)
    rose()
    yellowheart(-23050180)  # 左一
    # 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(2005090)  # 右一
    # 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()

5、你中有我,我中有你

成品展示


源代码

from turtle import *


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(10)
    heart(10000.7)
    go_to(8070)
    write("官人", font=("楷体"18"normal"))
    setheading(0)
    heart(-80-1001)
    go_to(-11015)
    write("娘子", font=("宋体"20"normal"))
    go_to(40-80)
    write("三生三世皆是你!", move=True, align="left", font=("arial"22"italic"))
    done()


main() 

6、浪漫小树

成品展示


源代码

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(02) == 0:
                t.color('snow')  # 白
            else:
                t.color('lightcoral')  # 淡珊瑚色
            t.pensize(branch / 3)
        elif branch < 8:
            if random.randint(01) == 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(50)
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()

7、用女朋友照片,绘制心形

成品展示

PS:我是每个照片放了三份,所以每个一样的图出现了三次,你要放置不一样的图片,就不会出现该问题了。

源代码

from PIL import Image
import os

map = [
    [111111111111111111111],
    [111111111111111111111],
    [111110001111100011111],
    [111100000111000001111],
    [111000000010000000111],
    [110000000000000000011],
    [110000000000000000011],
    [111000000000000000111],
    [111100000000000001111],
    [111110000000000011111],
    [111111000000000111111],
    [111111100000001111111],
    [111111110000011111111],
    [111111111000111111111],
    [111111111101111111111],
    [111111111111111111111],
    [111111111111111111111],
]

# 这个是我图片的所在路径
img_dir = "photo"

imgs = os.listdir(img_dir)
img_h = img_w = 192
rows = len(map)
columns = len(map[0])
figure = Image.new("RGB", (img_w * columns, img_h * rows), "white")

count = 0
for i in range(len(map)):
    for j in range(len(map[i])):
        if map[i][j] == 1:
            continue
        else:
            try:
                image = Image.open(os.path.join(img_dir, imgs[count]))
            except:
                continue
            image = image.resize((img_w, img_h))
            figure.paste(image, (img_w * j, img_h * i))
            count += 1

figure.show()
figure.save('心型照片墙.png')

8、电脑弹框表白

成品展示


源代码

import tkinter as tk
import random
import threading
import time

def dow():
    window = tk.Tk()
    width = window.winfo_screenwidth()
    height = window.winfo_screenheight()
    a = random.randrange(0, width)
    b = random.randrange(0, height)
    window.title('520快乐')
    window.geometry("200x50" + "+" + str(a) + "+" + str(b))
    tk.Label(window,
             text='520快乐!爱你幺',
             bg='Red',  # 背景颜色
             font=('楷体'17),
             width=15, height=2
             ).pack()
    window.mainloop()

threads = []
for i in range(30):  # 需要的弹框数量,别写太多,容易电脑卡死哦
    t = threading.Thread(target=dow)
    threads.append(t)
    time.sleep(0.1)
    threads[i].start()

9、字符画-用字画你女朋友

成品展示

原图:

渲染之后的图:

源代码

from PIL import Image, ImageDraw, ImageFont
import cv2


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(r'C:\Windows\Fonts\msyh.ttc', 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('test.png'"我爱你")

怎么样,还不赶紧给你女朋友惊喜去。

公众号(运维家)后台回复(520表白),即可获取打包成exe格式的成品代码了。

 

长按以识别二维码关注运维家~
微信号:yunweijia0909


往期推荐

01-docker系列-linux下的docker安装

centos7/linux编译安装mysql8最新版

linux 虚拟化


文章转载自运维家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论