Pygame 6-2 でのトリビア ゲーム分析

3.1.2 質問が含まれているファイルを読む

Trivia クラスの __init__() メソッドでは、各変数を初期化した後、質問が格納されているファイルを読み込みます。

f = open(filename, "r", encoding='utf8')
trivia_data = f.readlines()
f.close()

このうち、open()関数の役割はファイルを開くことです。関数の第一引数のファイル名はTriviaクラスの引数であり、このクラスのオブジェクトを定義する際に指定され、ファイルを保存するファイル名を表します。質問。

関連リンク1

 「Python でファイルを読み取る」

  「Pythonでファイルを読み書きする際のエンコード方法」

3.1.3 読み込んだファイルの処理

「Python でのファイルの読み取り」で述べたように、readlines() 関数は各行の改行文字を読み取るため、この記号を削除する必要があります。コードは次のとおりです。

for text_line in trivia_data:
    self.data.append(text_line.strip())
    self.total += 1

データを行単位で加算し、行を追加するごとに合計が1ずつ増加します。

3.2 Trivia クラスの print_text() 関数

この関数の機能は、指定されたコンテンツを指定されたフォント、色、影効果で指定された位置に表示することです。コードを以下に示します。

def print_text(font, x, y, text, color=(255,255,255), shadow=True):
    if shadow:
        imgText = font.render(text, True, (0,0,0))
        screen.blit(imgText, (x-2,y-2))
    imgText = font.render(text, True, color)
    screen.blit(imgText, (x,y))

このうち、パラメータ font は指定されたフォントを表します。関数内では、shadow が True の場合、影効果を使用することを意味します。screen.blit() 関数の x-2 および y-2 パラメータは、影が表示されることを示します (screen.blit() と組み合わせて使用​​されます)。コードの最後の行にある関数)。

関連リンク2:

「Pygame はテキストを表示します」

おすすめ

転載: blog.csdn.net/hou09tian/article/details/132640619