Pygame: как загрузить 150 изображений и представить каждое из них всего за 5 секунд за пробу
В настоящее время я пытаюсь разработать психологический эксперимент, который включает в себя 150 изображений.tif, которые должны быть представлены в течение 0,5 секунды на испытание, на весь экран, после того, как будет слышен шум. Каждое изображение должно быть представлено как минимум один раз, прежде чем будет представлено снова. Я заканчиваю свой эксперимент в рамках Pygame.
Я думал о сохранении всех изображений в каталог, а затем вытащил их по одному. Кажется ли это хорошей идеей?
Я очень новичок в программировании и был бы признателен за любую помощь / ссылки на подобные вопросы. Если мне не хватает какой-либо соответствующей информации, пожалуйста, дайте мне знать.
Спасибо!
1 ответ
Использовать
glob
модуль для получения списка имен ваших изображений: https://pymotw.com/3/glob/index.htmlЗациклите этот список имен файлов, загрузите их с
pygame.image.load
и добавить полученные изображения /pygame.Surface
к списку.Перемешать список, создать индексную переменную (
index = 0
) и назначить изображение с текущим индексом другой переменной, напримерcurrent_image = image_list[index]
,Используйте переменную таймера, чтобы увеличить индекс и поменять местами изображение после желаемого интервала времени.
pygame.time.get_ticks
,set_timer
или жеdelta time
Решения здесь.Если индекс
>=
длина списка, сбросьте его до0
и перемешать список снова.