Python 编写个情人节求爱对联

编程之家收集整理的这篇文章主要介绍了Python 编写个情人节求爱对联编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

又快到了一年一度的情人节,单身狗大型虐狗即将来袭,春节和情人节双重打击下,你还敢回家面对七大姑八大姨吗?反正疫情之下,国家都提倡你就地过年,远在异乡的你,不如和我一块守候在工作之地,没事码吗代码,帮助别人,岂不快哉!

@H_403_4@ 1、pygame的魅力

初学python,就被某个视频中的老外,带入了pygame中去,简单的几句语法,边可以领略游戏的魅力,不愧是编程届的NO 1,来来来,让我们来试试把。

当然,环境还是需要的,安装python和pygame包后,在vscode中键入如下代码
终端里执行 脚本,你的一个游戏画布就搞定了!

import sys
import pygame
pygame.init()
size = width, height = 640, 600
black = (0, 0, 0)
white = (255, 255, 255)
red = (255, 0)
screen = pygame.display.set_mode(size)
screen.fill(black)
while 1:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
    pygame.display.update()
@H_403_4@ 2、画个对联

简单查询下pygame的函数,便可以胜任这份工作了。 这里着重介绍下垂直打印文字的问题。

pygame 采用screen.blit来绘制文字,我们需要引入字体,可以使用系统自带的字体,比如SimHei。 如果需要竖着输出文字,需要我们自己计算文字的坐标位置,并没有现成的函数。可以借助 Rect对象来实现,其move方法可以移动矩形框到执行的偏移位置。
核心的函数如下,按照字符串枚举,然后往下移动位置,逐字输出

def drawtext(screen, font, text, rect):
   # 为了居中,我们缩小下输出矩形大小(这里按照中心点不变进行缩放)
    rect = rect.inflate(-15, -15)
    for c in text:
        word = font.render(c, True, black)
        screen.blit(word, rect)
        rect = rect.move(0, 50)
@H_403_4@ 3、左右画上对联

有了垂直输出函数后,输出对联就很简单了,例如:

screen = pygame.display.set_mode(size)
font = pygame.font.SysFont('SimHei', 32)
rect1 = pygame.Rect(50, 50, 260)
rect2 = pygame.Rect(500, 260)
pygame.draw.rect(screen, red, rect1, 0)
pygame.draw.rect(screen, rect2, 0)
drawtext(screen, "天王盖地虎", rect1)
drawtext(screen, "宝塔镇河妖", rect2)
@H_403_4@ 4、画上图片

图片可以利用pygame.image.load进行加载,然后需要控制下大小,当然如果你图片合适,可以原尺寸输出的。

# 加载图片
bg = pygame.image.load("./nvshen.jpg")
# 控制大小在 320*340
bg = pygame.transform.scale(bg, (320, 340))
# 画上图片
screen.blit(bg, (165, 100))
@H_403_4@ 5、来个求爱效果

在这里插入图片描述


附上全部代码,单身狗拿去修改吧,可以自己玩耍了,不谢。

import sys
import pygame


def drawtext(screen, rect):
    rect = rect.inflate(-15, 50)


pygame.init()
size = width, 0)
screen = pygame.display.set_mode(size)
font = pygame.font.SysFont('SimHei', 500)
rect2 = pygame.Rect(500, 500)
rect3 = pygame.Rect(230, 10, 200, 50)
rect4 = rect3.inflate(-15, -15)
bg = pygame.image.load("./nvshen.jpg")
bg = pygame.transform.scale(bg, 340))
screen.fill(black)
screen.blit(bg, 100))
pygame.draw.rect(screen, rect1.move(50, 0), rect2.move(50, rect3, "每一朵雪花", "都是你迷人的微笑", 0))
drawtext(screen, "每一阵东风", rect2)
drawtext(screen, "都吹不散我对你的思念", 0))
word = font.render("缘来就是你", black)
screen.blit(word, rect4)

while 1:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
    pygame.display.update()

@H_403_4@ 6、python就是好玩

python作为一个能快速上手的脚本,的确比较好玩! 做游戏、web、爬虫都是这么简单方便,加油学,不求闻达于诸侯,但求内心一平静。

总结

以上是编程之家为你收集整理的Python 编写个情人节求爱对联全部内容,希望文章能够帮你解决Python 编写个情人节求爱对联所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢寻找一群志同道合、互帮互助的学习伙伴,可以点击下方链接加入:
编程之家官方1群:1065694478(已满)
编程之家官方2群:163560250(已满)
编程之家官方3群:312128206

相关文章

猜你在找的Python相关文章

Python日期格式化方法 import datetime datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S&quo
什么是JSON JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。 那么,JSON到底是什么? JSON就是一串字符串
html布局: 1 <div class="column"> 2 <div class="panel bl bar1"> 3 <d
方法一:使用相对于当前文件(源文件)的相对路径 使用 ../ 对于这个例子来说 ../ 把路径带到了项目根目录的下一级目录 1 <script src="../static/js/wo
一、fetch请求时,request.json能获取到数据,request.form获取不到数据 1 var data = {'name':'test'}; 2 3 f
Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Comp
描述一下问题背景: 前台封装一个json字符串给后台传输数据,后台的ajax获取请求之后把接收的数据显示到前台html表格上。 jsonify:这个方法可以把字典转化为json字符串 通过jsonif