当前位置:
首页
文章
后端
详情

程序员的浪漫!用Python实现表白代码!

大家都说程序员土,不懂得浪漫,其实这都是偏见。程序员也可以很浪漫。接下来小编就带来一些python表白代码,让我们来看看程序员能有多浪漫吧(学习需求:会海龟绘图法和懂一点字符画生成方式:主要是PIL库的使用)!

一、浪漫玫瑰花

浪漫玫瑰花

实现代码:

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()

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

二、浪漫玫瑰加爱心

玫瑰加爱心

实现代码:

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

三、心心相印

心心相印

实现代码:

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()

四、粉嫩爱心

粉嫩爱心

实现代码:

'''不正经爱心'''
#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()

五、丘比特一键穿心

丘比特一箭穿心

程序代码:

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()

六、发射爱心小人

发射爱心小人

实现代码:

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

七、浪漫动态樱花树

动态樱花树

实现代码:

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:WindowsFontsSTXINGKA.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', "我爱你")

 注:以上相关代码都不是小编写的,小编觉得他们的思路是很不错的,但是观感并不是那么的如意,所以小伙伴们要尝试这种方式的话建议在此基础上进行代码修改以争取更好的样式展现。

到此这篇python表白代码介绍的文章就介绍到这了,更多有趣的Python代码可以搜索W3Cschool以前的文章或继续浏览下面的相关文章。

免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。

同类热门文章

深入了解C++中的new操作符:使用具体实例学习

C++中的new操作符是动态分配内存的主要手段之一。在程序运行时,我们可能需要动态地创建和销毁对象,而new就是为此提供了便利。但是,使用new也常常会引发一些问题,如内存泄漏、空指针等等。因此,本文将通过具体的示例,深入介绍C++中的new操作符,帮助读者更好地掌握其使用。


深入了解C++中的new操作符:使用具体实例学习

怎么用Java反射获取包下所有类? 详细代码实例操作

Java的反射机制就是在运行状态下,对于任何一个类,它能知道这个类的所有属性和方法;对于任何一个对象,都能调用这个对象的任意一个方法。本篇文章将通过具体的代码示例,展示如何通过Java反射来获取包下的所有类。


怎么用Java反射获取包下所有类? 详细代码实例操作

了解Java中的volati关键字的作用 以及具体使用方法

本篇文章将和大家分享一下Java当中的volatile关键字,下面将为各位小伙伴讲述volatile关键字的作用以及它的具体使用方法。


了解Java中的volati关键字的作用 以及具体使用方法

Java Map 所有的值转为String类型

可以使用 Java 8 中的 Map.replaceAll() 方法将所有的值转为 String 类型: 上面的代码会将 map 中所有的值都转为 String 类型。 HashMap 是 Java

Java Map 所有的值转为String类型

员工线上学习考试系统

有点播,直播,在线支付,三级分销等功能,可以对学员学习情况的监督监控,有源码,可二次开发。支持外网和局域网私有化部署,经过测试源码完整可用!1、视频点播:视频播放,图文资料,课件下载,章节试学,限时免

员工线上学习考试系统