9

私はPythonでコンソール(ゲームコンソールではなく端末のように)ピンポンゲームを作成しようとしていますが、ゲームを(再)描画する最善の方法を理解するのに苦労しています。

2次元配列を一種のビットマップとして使用し、配列を編集してボール/パドルの新しい位置を反映させ、各行を文字列にキャストして印刷することを考えていました。ただし、これは古い「フレーム」が残ることを意味し、ゲームのサイズがコンソール ウィンドウよりも小さい場合は、古いフレームがまだ表示されます。

コンソールからキャラクターを削除する方法はありますか? '\b' は信頼できないと聞いたことがあります。

または、この種のアプリのコンソールに出力するためのより簡単な代替ルートはありますか?

4

6 に答える 6

6

Python 用のcursesポート/ライブラリがあるようです:

https://docs.python.org/library/curses.html

于 2008-09-20T02:47:18.983 に答える
6

urwidを試してください。urwid にバンドルされている例の 1 つは、アニメーション化された棒グラフのシミュレーターです。棒グラフは、古い「フレーム」のアーティファクトを残さずに、画面をきれいに表示します。

于 2009-07-24T07:16:41.540 に答える
4

実際には、これを解決するライブラリが2 つあります。古いcursesと新しいS-Langです。Curses は、特に Windows や Unicode コンソールでバグのある線画を作成する傾向があります (Unicode サポートはクソです)。S-Lang の画面管理機能は優れています。

Python ではどちらも使用していませんが、curses の方がサポートされているようですが、少なくとも C では、これらの問題のためにコードを S-Lang に切り替えています。 .

于 2008-11-13T18:30:52.983 に答える
1

あなたは呪いを使うことができます。

WindowsポートUnixポート、そしてたくさんのドキュメントがあります。いくつかのヘルパーライブラリを使用することもできます。

于 2008-09-20T09:15:16.337 に答える
0

cursesモジュールを使用して調査します。それは多くの詳細を処理し、より高いレベルのものに集中できるようにします.

于 2008-09-20T02:48:12.787 に答える