Оптимизация sys.stdout.write()Python

Программы на Python
Ответить
Anonymous
 Оптимизация sys.stdout.write()

Сообщение Anonymous »

Я любитель создавать простые игры с использованием Python и консоли Windows через sys.stdout.write(). Я знаю, что этот метод создания «графики» с выводом символов ascii на консоль намного медленнее, чем с использованием видеокарты, но я просто наслаждался этим простым проектом, пока промочил ноги.
Есть ли у кого-нибудь совет о том, как ускорить время печати кадра. В настоящее время каждый символ на консоли хранится в словаре. Словарь просматривается с использованием координат x,y в качестве ключей, и каждый символ добавляется к строке в каждом кадре, который выводится на консоль. При минимальной игровой логике и «графике» у меня уже меньше 60 кадров. Мне было интересно, будет ли вообще быстрее использовать многопоточность или многопроцессорность для изоляции печати кадра на консоли (или преобразования моего словаря в строку), чтобы ускорить обработку каждого кадра. Я сам попробовал, но печать на консоль в отдельном потоке с использованием «поточности» не имела никакого значения, и я не смог заставить многопроцессорную обработку работать с очередью для обновления каждого кадра. Если у кого-нибудь есть какие-либо советы о том, как можно ускорить время кадра, я буду признателен. Если вы зашли так далеко, спасибо за чтение!
Окно текущей игры, показывающее FPS и количество символов Ascii в левом нижнем углу.

Подробнее здесь: https://stackoverflow.com/questions/798 ... dout-write
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»