抖音同款满屏飘字表白代码(Python版)

技术

picture.image

picture.image

点击蓝字,关注我们

picture.image

“初次见面的时候,没想到会这样爱你”

写在前面

picture.image

picture.image

c语言满屏飘字表白代码都有了,python当然也不能落后啦,小编熬夜码字,给大家用python又敲了一个表白代码,小伙伴们更喜欢c语言的还是python的呢?一起来看看吧~

picture.image

Turtle入门

picture.image

picture.image

Python的Turtle是一个库,它允许用户以图形方式来绘制形状和图案。它的名字来自于一个类似于turtle的机器人,它可以在不同的方向上移动并在其路径上留下痕迹。在本文中,我们将学习如何使用Turtle库,以及它的一些入门函数。在开始之前,需要先导入Turtle库。可以使用以下代码来完成:


          
              

            import turtle
          
        

接下来,我们可以开始使用一些入门函数,例如:

turtle.forward(distance)

这个函数将会向前移动机器人一定距离。距离是作为函数的参数来提供的。例如,以下代码将会向前移动50个像素:


          
              

            turtle.forward(50)
          
        

turtle.right(angle)

这个函数使机器人向右旋转一定角度。角度是作为函数的参数来提供的。例如,以下代码将会向右旋转90度:


          
              

            
 turtle.right(90)
 
          
        

turtle.left(angle)

这个函数使机器人向左旋转一定角度。角度是作为函数的参数来提供的。例如,以下代码将会向左旋转90度:


          
              

            
 turtle.left(90)
 
          
        

turtle.penup()

这个函数将会关闭机器人的笔。移动机器人时不会留下痕迹。例如,以下代码将会关闭画笔:


          
              

            
 turtle.penup()
 
          
        

turtle.pendown()

这个函数将会打开机器人的笔。移动机器人时会留下痕迹。例如,以下代码将会打开画笔:


          
              

            
 turtle.pendown()
 
          
        

turtle.color(color_name)

这个函数将会更改机器人画笔的颜色。颜色名称是作为函数的参数来提供的。例如,以下代码将会将画笔颜色更改为红色:


          
              

            
 turtle.color("red")
 
          
        

turtle.pensize(size)

这个函数将会更改机器人画笔的大小。大小是作为函数的参数来提供的。例如,以下代码将会将画笔大小更改为2:


          
              

            
 turtle.pensize(2)
 
          
        

turtle.begin_fill()

这个函数将会开始填充机器人绘制的形状。例如,以下代码将会开始填充形状:


          
              

            
 turtle.begin\_fill()
 
          
        

turtle.end_fill()

这个函数将会结束填充机器人绘制的形状。例如,以下代码将会结束填充形状:


          
              

            
 turtle.end\_fill()
 
          
        

turtle.circle(radius)

这个函数将会绘制一个圆形。半径是作为函数的参数来提供的。例如,以下代码将会绘制一个半径为50像素的圆形:


          
              

            
 turtle.circle(50)
 
          
        

turtle.goto(x, y)

这个函数将会移动机器人到一个特定的坐标。x和y是作为函数的参数来提供的。例如,以下代码将会将机器人移动到(100, 100)的坐标:


          
              

            
 turtle.goto(100, 100)
 
          
        

这些入门函数仅仅是Turtle库中的一小部分。通过这些函数,你已经可以开始绘制简单的形状和图案了。

picture.image

满屏飘字

picture.image

picture.image

picture.image

环境搭建

picture.image

如何下载安装PyCharm并搭建Python开发环境

关于运行Python代码的方法以及遇到问题的解决方案(计算机小白篇)

picture.image

完整程序


            
import turtle as tu
            
import random as ra
            
import tkinter as tk
            
import math
            
def Main():
            
    tu.setup(1.0, 1.0)
            
    tu.screensize(1.0, 1.0)    #设置画布大小
            
    tu.bgcolor('black')  #设置画布颜色
            
    tu.title("❤")
            
    t = tu.Pen()
            
    t.ht()               #隐藏画笔
            
    words = ["我爱你",
            
"I Love You!",
            
"永远爱你",
            
"你是我年少的欢喜",
            
"一生一世一双人",
            
"余生我陪你走",
            
"陪你到来生",
            
"春风十里不如你",
            
"三生有幸来日方长",
            
"夜很长幸有你",
            
"爱你的全部",
            
"踏过八荒四海只为你",
            
"愿得一人心",
            
"众里寻他千百度",
            
"顶峰相见",
            
"等你下课",
            
"往后余生",
            
"Missing You!",
            
"做我女朋友好么",
            
"你已经在我的未来里了",
            
"陪你到世界之巅",
            
"白头偕老",
            
"我喜欢你",
            
"好想好想你",
            
"想你想你想你",
            
"今夜月色真美",
            
"你是我的唯一"
            
             ]
            
class Love():    #文案类
            
def __init__(self):
            
self.x = ra.randint(-1000,1000)   #文案的横坐标
            
self.y = ra.randint(-500,500)     #文案的纵坐标
            
self.f = ra.uniform(-3,3)   #文案左右移动
            
self.speed = ra.uniform(2,5)     #文案移动速度
            
self.word = ra.choice(words)  # 文案
            
self.color = "#%02x%02x%02x" % (ra.randint(0,255),ra.randint(0,255),ra.randint(0,255))   #文案的颜色
            
def draw(self):                #写每个文案
            
            t.penup()                  #提笔
            
            t.goto(self.x,self.y)      #随机位置
            
            t.pendown()                #落笔
            
            t.color(self.color)        #文案颜色
            
            t.write(self.word,, font=("Comic Sans MS", 24, "bold"))
            
def move(self):                    #文案移动函数
            
if self.y <= 500:            #当文案还在画布中时
            
self.y += self.speed     #设置上下移动速度
            
self.x -= self.speed * math.sin(self.f)    #设置左右移动速度
            
else:                        #当文案漂出了画布时,重新生成一个文案
            
self.x = ra.randint(-1000,1000)
            
self.y = -500
            
self.f = ra.uniform(-3.14, 3.14)  # 文案左右移动呈正弦函数
            
self.speed = ra.uniform(2, 5)  # 文案移动速度
            
self.word = ra.choice(words)  # 文案
            
self.color = "#%02x%02x%02x" % (ra.randint(0, 255), ra.randint(0, 255), ra.randint(0, 255))  # 文案的颜色
            
class Ball():    #彩球类
            
def __init__(self):
            
self.r = ra.uniform(2,5)       #彩球的半径
            
self.x = ra.randint(-1000,1000)   #彩球的横坐标
            
self.y = ra.randint(-500,500)     #彩球的纵坐标
            
self.speed = ra.uniform(2,10)     #彩球移动速度
            
self.color = "#%02x%02x%02x" % (ra.randint(0,255),ra.randint(0,255),ra.randint(0,255))    #彩球的颜色
            
self.outline = 10                #彩球的大小
            
def draw(self):                #画每个彩球
            
            x=self.r                   #彩球的半径
            
            t.pensize(self.outline)    #彩球的大小
            
            t.penup()                  #提笔
            
            t.goto(self.x,self.y)      #随机位置
            
            t.pendown()                #落笔
            
            t.color(self.color)        #彩球颜色
            
            t.begin_fill()
            
            t.fillcolor(self.color)
            
            t.circle(x)
            
def move(self):                    #彩球移动函数
            
if self.y >= -500:            #当彩球还在画布中时
            
self.y -= self.speed     #设置上下移动速度
            
else:                        #当彩球漂出了画布时,重新生成一个彩球
            
self.r = ra.uniform(2,3)
            
self.x = ra.randint(-1000,1000)
            
self.y = 500
            
self.speed = ra.uniform(2,10)
            
self.color = "#%02x%02x%02x" % (ra.randint(0,255),ra.randint(0,255),ra.randint(0,255))
            
self.outline = 10
            
    Loves = []            #用列表保存所有文案
            
for i in range(595):
            
        Loves.append(Love())
            
        Loves.append(Ball())
            
        Loves.append(Ball())
            
while True:           #开始绘制
            
        tu.tracer(0)
            
        t.clear()
            
for i in range(199):    #66个漂浮的文案
            
            Loves[i].move()
            
            Loves[i].draw()
            
        tu.update()
            
    tu.mainloop()
            
# 主函数
            
if __name__ == '__main__':
            
    root = tk.Tk()
            
    root.title('❤')
            
    root.resizable(0, 0)
            
    screenwidth = root.winfo_screenwidth()
            
    screenheight = root.winfo_screenheight()
            
    widths = 300
            
    heights = 100
            
    x = (screenwidth - widths) / 2
            
    y = (screenheight - heights) / 2 - 66
            
    root.geometry('%dx%d+%d+%d' % (widths, heights, x, y))  # 设置在屏幕中居中显示
            
    tk.Label(root, text='亲爱的,做我女朋友好吗?', width=37, font=('宋体', 12)).place(x=0, y=10)
            
def OK():  # 同意按钮
            
        root.destroy()
            
        Main()  # 同意后显示跳动爱心
            
def NO():  # 拒绝按钮,拒绝不会退出,必须同意才可以退出哦~
            
        tk.messagebox.showwarning('❤', '再给你一次机会!')
            
def closeWindow():
            
        tk.messagebox.showwarning('❤', '逃避是没有用的哦')
            
    tk.Button(root, text='好哦', width=5, height=1, command=OK).place(x=80, y=50)
            
    tk.Button(root, text='不要', width=5, height=1, command=NO).place(x=160, y=50)
            
    root.protocol('WM_DELETE_WINDOW', closeWindow)  # 绑定退出事件
            
    root.mainloop()
        

picture.image

具体分析

picture.image

本程序的功能是显示跳动的爱心和漂浮的表白语。运行程序后,首先会弹出一个窗口,询问用户是否愿意成为程序作者的女朋友。用户可以选择同意或者拒绝。如果用户选择同意,则会弹出一个新的窗口,显示跳动的爱心和漂浮的表白语;如果用户选择拒绝,则会给予用户再次选择的机会。如果用户想要退出程序,则可以点击窗口右上角的关闭按钮。

程序的实现思路如下:

导入所需要的模块,包括turtle、random和tkinter模块;

定义一个Love类和一个Ball类,其中Love类表示漂浮的表白语,Ball类表示漂浮的彩球;

在Love类中,定义文案的移动函数和绘制函数,其中移动函数用于控制文案上下左右移动,绘制函数用于在画布上绘制文案;

在Ball类中,定义彩球的移动函数和绘制函数,其中移动函数用于控制彩球上下移动,绘制函数用于在画布上绘制彩球;

定义一个Main函数,用于绘制跳动的爱心和漂浮的表白语。在Main函数中,首先设置画布的大小和背景颜色,然后定义一个含有595个元素的列表,其中每个元素都是一个Love对象或者一个Ball对象,表示漂浮的表白语和彩球。接着,在一个无限循环中,每次依次移动和绘制每个元素,然后更新画布;

最后,定义一个窗口,用于询问用户是否愿意成为程序作者的女朋友。如果用户同意,则调用Main函数显示跳动的爱心和漂浮的表白语;如果用户拒绝,则弹出一个提示框,再次询问用户是否愿意成为程序作者的女朋友。

总之,本程序实现了一个非常浪漫的场景,用跳动的爱心和漂浮的表白语向爱人表达爱意,可以用于情人节或者其他节日的礼物。

picture.image

系列文章

picture.image

picture.image

C语言满屏飘字表白代码(可修改文案)

一起来看python流星雨吧!(含表白界面)

Python李峋同款跳动的爱心代码(可写字版)

无限弹窗!满屏表白代码来啦,快来看看吧

…… Python百宝箱

picture.image

**写在后面

picture.image**

picture.image

我是一只有趣的兔子,感谢你的喜欢!

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
字节跳动基于 DataLeap 的 DataOps 实践
随着数字化转型的推进以及业务数仓建设不断完善,大数据开发体量及复杂性逐步上升,如何保证数据稳定、正确、持续产出成为数据开发者核心诉求,也成为平台建设面临的挑战之一。本次分享主要介绍字节对于DataOps的理解 以及 DataOps在内部业务如何落地实践。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论