python中pygame输入换行文字,Pygame:写多行

@Maxime Lorant的回答就是你想要的。假设你有一张名单,上面写着你的名字。在names = ["Name1", "Name2", "Name3"]

f = open("names.txt", "a")

for i in names:

f.write(i + "\n")

f.close()

如果名称.txt是一个空白文件,现在它的内容应该是:

^{pr2}$

基本上,换行符在pygame中不起作用-你必须改变文本矩形的坐标。我对pygame有点陌生,但我设法做到了您想要的,下面是我的天真方法(我从上面的链接编辑代码):#...

f = open("t.txt")

lines = f.readlines()

f.close()

basicfont = pygame.font.SysFont(None, 48)

text = basicfont.render('Hello World!', True, (255, 0, 0), (255, 255, 255))

textrect = text.get_rect()

textrect.centerx = screen.get_rect().centerx

textrect.centery = screen.get_rect().centery

screen.fill((255, 255, 255))

for i in lines:

# each i has a newline character, so by i[:-1] we will get rid of it

text = basicfont.render(i[:-1], True, (255, 0, 0), (255, 255, 255))

# by changing the y coordinate each i from lines will appear just

# below the previous i

textrect.centery += 50

screen.blit(text, textrect)

#...

结果如下:

jn7Yy.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值