问答详情

如何实现python设置中文界面?

504次观看
标签: 中文 如何实现 界面
老师回答

下面,小编将通过一组实例演示,让大家更直观,更清楚明白的了解要设置中文这一内容的操作步骤。

首先展示实例代码:

import pygame
from pygame.locals import *
 
def main():
pygame.init()
screen = pygame.display.set_mode((1000, 450))  #窗口的大小
pygame.display.set_caption('pygame程序的界面的中文设置')  #窗口标题,中文不需要特别的设置
background = pygame.Surface(screen.get_size())
background = background.convert()
background.fill((250, 250, 250))
 
font = pygame.font.Font(None, 60)  #原始代码,使用默认字体,不能显示中文
#font = pygame.font.Font('/home/xgj/Desktop/simsun/simsun.ttf', 60)  #显示中文的设置和字体,及路径
text = font.render("Hello 我爱你", 1, (10, 10, 10))  
 
textpos = text.get_rect()
textpos.center = background.get_rect().center
background.blit(text, textpos)
screen.blit(background, (0, 0))
pygame.display.flip()
while 1:
for event in pygame.event.get():
if event.type == QUIT:
return
screen.blit(background, (0, 0))
pygame.display.flip()
if __name__ == '__main__': main()

运行效果展示:

注意:hello后面是乱码,中文内容“我爱你”并没有显示。

修改后的代码展示:

 
import pygame
from pygame.locals import *
 
def main():
pygame.init()
screen = pygame.display.set_mode((1000, 450))  #窗口的大小
pygame.display.set_caption('pygame程序的界面的中文设置')  #窗口标题,中文不需要特别的设置
background = pygame.Surface(screen.get_size())
background = background.convert()
background.fill((250, 250, 250))
 
#font = pygame.font.Font(None, 60)  #原始代码,使用默认字体,不能显示中文
font = pygame.font.Font('/home/xgj/Desktop/simsun/simsun.ttf', 60)  #显示中文的设置和字体,及路径
text = font.render("Hello 我爱你", 1, (10, 10, 10))  
 
textpos = text.get_rect()
textpos.center = background.get_rect().center
background.blit(text, textpos)
screen.blit(background, (0, 0))
pygame.display.flip()
while 1:
for event in pygame.event.get():
if event.type == QUIT:
return
screen.blit(background, (0, 0))
pygame.display.flip()
if __name__ == '__main__': main()

运行效果展示:

从上面可以看出,已经显示了中文。

总结:需要自己去下载含有中文的字体:比如:simsun.ttf#放在指定的文件目录下。

好了,大家也可以根据上述代码演示,尝试看下哦~如需了解更多python实用知识,点击进入PyThon学习网教学中心

免费直播

    精选课程
    相关推荐
    python中sort()和sorted()使用有什么区别?
    付老师 Python编程

    python中有两种列表排序的方法,即sort() 和sorted() 。这两个方法看起来很像,但是有很大的差别。sort() 修改原列表,永久性排序,无返回值,内存消耗小,而sorted() 保持原列表不变,临时性排序,有返回值,内存消耗大。本文向大家详解这二者使用的区别。

    一、sort() 

    1、定义:python列表的一个内置的排序方法,只是列表的一个方法,只适用于列表;

    2、作用:作用于列表,直接修改原有列表,无返回值;

    3、排序时间:对列表进行永久性排序;

    4、内存消耗:无需保存原对象,节省内存空间。

    5、使用实例:

    list_name = [1, 3, 4, -0.2200222, -4.66]
    list_name.sort()
    print(list_name)

    输出

    [-4.66, -0.2200222, 1, 3, 4]
    原列表的值发生变化,原列表被修改

    二、sorted() 

    1、定义:python内置的一个排序函数,接受一切迭代器,返回一个有序的副本,并且类型总是列表;

    2、作用:作用于任意可迭代的对象,原有列表保持不变,会返回一个排序后的列表。

    3、排序时间:对列表进行临时排序。

    4、内存消耗:返回新对象,所以耗费较多资源。

    5、使用实例:

    list_name = [1, 3, 4, -0.2200222, -4.66]
    list_name_new = sorted(list_name)
    print(list_name)
    print(list_name_new)

    输出

    [1, 3, 4, -0.2200222, -4.66] 原列表
    [-4.66, -0.2200222, 1, 3, 4] 排序后的列表

    相比于sort(),sorted() 使用的范围更为广泛,但是sort()消耗内存比较小,效率也比较高。所以如果不需要保留原列表,sort更有效一点哦~

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司