Pygame: 无法打开文件。同一目录
Pygame: Couldn't open file. Same directory
我将 150 张 .tif 图像加载到 glob 模块,但目前无法加载它们。我对编程很陌生,所以我想这是我遗漏的一个愚蠢的错误,但我似乎无法弄清楚。
代码是:
import pygame, glob
types= ('*.tif')
artfile_names= []
for files in types:
artfile_names.extend(glob.glob(files))
print(artfile_names)
for artworks in artfile_names:
pygame.image.load(str(artfile_names))
感谢您的帮助!
错误在于您的 types
变量只是一个字符串(用括号括起来没有任何效果),因此您遍历字符串中的字母并为每个字母调用 artfile_names.extend(glob.glob(files))
。
逗号构成元组(空元组除外):
types = '*.tif', # This gives you a tuple with the length 1.
types = '*.tif', '*.png' # This is a tuple with two elements.
在代码的第二部分,您需要遍历 artfile_names
,调用 pygame.image.load(artwork)
从硬盘加载图像并将结果 surface 附加到名单:
images = []
for artwork in artfile_names:
images.append(pygame.image.load(artwork).convert())
调用 .convert()
方法(或 .convert_alpha()
用于具有透明度的图像)以提高 blit 性能。
我将 150 张 .tif 图像加载到 glob 模块,但目前无法加载它们。我对编程很陌生,所以我想这是我遗漏的一个愚蠢的错误,但我似乎无法弄清楚。
代码是:
import pygame, glob
types= ('*.tif')
artfile_names= []
for files in types:
artfile_names.extend(glob.glob(files))
print(artfile_names)
for artworks in artfile_names:
pygame.image.load(str(artfile_names))
感谢您的帮助!
错误在于您的 types
变量只是一个字符串(用括号括起来没有任何效果),因此您遍历字符串中的字母并为每个字母调用 artfile_names.extend(glob.glob(files))
。
逗号构成元组(空元组除外):
types = '*.tif', # This gives you a tuple with the length 1.
types = '*.tif', '*.png' # This is a tuple with two elements.
在代码的第二部分,您需要遍历 artfile_names
,调用 pygame.image.load(artwork)
从硬盘加载图像并将结果 surface 附加到名单:
images = []
for artwork in artfile_names:
images.append(pygame.image.load(artwork).convert())
调用 .convert()
方法(或 .convert_alpha()
用于具有透明度的图像)以提高 blit 性能。