在Pygame中使用screen.blit时,我可以使用.format功能吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Pygame中使用screen.blit时,我可以使用.format功能吗?相关的知识,希望对你有一定的参考价值。

嘿,我最近无法弄清楚如何使用某些x和y值将列表blit到我的pygame屏幕上,允许文本blit说x + = 20,每次blits时我的列表中的每隔一个字符串超过20个单位。我最近在控制台上做了一些打印的.format东西,是否有像screen.blit这样的功能,所以我可以在pygame窗口中使用相同的格式?包含我的代码。提前致谢

import pygame


NAMES = ['Deanerys T.', 'Jon S.', 'Gregor C.', 'Khal D.', 'Cersei L.', 'Jamie L.', 
         'Tyrion L.', 'Sansa S.', 'Ayra S.', 'Ned S.']

DATE_OF_BIRTH = ['6/10/1996', '6/12/1984', '3/12/1980', '8/4/1986', '7/2/1970', 
                 '7/2/1975', '12/24/1980', '11/30/1993', '5/18/1999', '6/27/1984']

AGE = [22, 34, 38, 32, 48, 43, 38, 25, 19, 34]

MARITAL_STATUS = ['Not Married', 'Not Married', 'Not Married', 'Not Married', 
                  'Married', 'Not Married', 'Married', 'Married', 'Not Married', 'Married']

NUM_OF_CHILDREN = [3, 0, 0, 4, 2, 0, 1, 1, 0, 5]




for i in range(10):
    print("{:>12} was born {:>10}, is age {:>2}.  They have {:>1} children, and are {:>4}".format(NAMES[i], DATE_OF_BIRTH[i], AGE[i], NUM_OF_CHILDREN[i], MARITAL_STATUS[i]))
print("
")

for i in range(10):
    print("NAME: {:>12} DATE OF BIRTH: {}".format(NAMES[i], DATE_OF_BIRTH[i], ))
print("
")

for i in range(10):
    print("NAME: {:>12}  AGE: {}".format(NAMES[i], AGE[i], ))
print("
")

for i in range(10):
    print("NAME: {:>12} MARRIAGE STATUS: {}".format(NAMES[i], MARITAL_STATUS[i], ))
print("
")

for i in range(10):
    print("NAME: {:>12} NUMBER OF CHILDREN: {}".format(NAMES[i], NUM_OF_CHILDREN[i], ))
print("
")
答案

format是字符串的运算符,因此将它与pygame一起使用没有问题。

例如:

hp = 56
player_hp_text = "Hit Points: {:>3}".format( hp )

player_hp_bitmap = myfont.render( player_hp_text, 16, (255, 255,0) )
screen.blit( player_hp_bitmap, ( 10, 10 ) )

以上是关于在Pygame中使用screen.blit时,我可以使用.format功能吗?的主要内容,如果未能解决你的问题,请参考以下文章

pygame.surface.blit()方法4个参数的使用方法

在mac下初次使用pygame踩坑纪实(卡死)

Mac下使用pygame实现飞机大战load图片问题

Mac下使用pygame实现飞机大战load图片问题

如何在 Pygame 中将文本居中

Pygame无响应显示[重复]