我正在尝试渲染一个numpy数组,也就是说,它的内容是pygame中的一个屏幕。 但是,pygame文本渲染器仅支持Unicode。
我试图将我的数组转换为chararray,但它不是一个解决方案。
numpy中是否有任何函数将数组转换为字符串,同时保持形状。 另一种方法是将numpy数组解析为字符串;尽管它奏效了,阵列也失去了它的形状。
这是我的代码。
import pygame import numpy as np pygame.init() pygame.font.init() screen = pygame.display.set_mode((400, 400)) b = np.array([[1, 2, 3, 4], [3, 5, 6, 5]]) print(b) running = True font = pygame.font.SysFont("Arial", 20) while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False text = font.render(b, False, (255, 255, 255)) screen.blit(text, (30, 30)) pygame.display.flip() pygame.quit() quit()
答案 0 :(得分:1)
我相信np.array_str(b)
会做你想要的。查看np.array_str
上的文档。
它确实返回the string representation of the data in the array
。引用的文档也符合您的要求。