Pygame入門 日本語文字列を表示する

IPAexゴシックフォントを使いました。

プログラムを実行する前に、
IPAのサイトからフォントファイルをダウンロードして、
カレントディレクトリ(Pythonスクリプトファイルが置かれているディレクトリ)に配置してください。

import pygame
from pygame.locals import *   # 定数QUITを使うため。importしない場合は、pygame.QUITとする。
import sys

SCREEN_SIZE = (400, 300)

def main():
    pygame.init()
    screen = pygame.display.set_mode(SCREEN_SIZE)   # 画面の大きさを設定する
    pygame.display.set_caption('display')   # 画面のタイトルを設定する
    font = pygame.font.Font('ipaexg.ttf', 50)
    text = font.render('日本語', True, (0, 0, 0))

    while True:
        screen.fill((255, 255, 255))   # 画面を白く塗りつぶす
        screen.blit(text, (10, 10))
        pygame.display.update()

        for event in pygame.event.get():
            if event.type == QUIT:
                pygame.quit()
                sys.exit()

if __name__ == '__main__':
    main()

Pygame入門 文字列を表示する

Pygameでは文字列を直接画面に表示することはできないそうです。
なので、下記のように3つの手順を実行します。
font = pygame.font.Font(None, 55) # フォントを設定する
text = font.render('abc', True, (255, 255, 255)) # 表示する文字列を作る
screen.blit(text, [50, 100]) # 画面に文字列を貼り付ける

renderの2つ目の引数にTrueを指定すると、
文字の角が滑らかに表示されるそうです。

import pygame
from pygame.locals import *   #pygameで設定された定数を使うため
import sys

def main():
    pygame.init()
    screen = pygame.display.set_mode((400, 300))   # 画面の大きさを設定する
    pygame.display.set_caption('text')   # 画面のタイトルを設定する
    font = pygame.font.Font(None, 55)   # フォントを設定する

    while True:
        screen.fill((0, 0, 0))   # 画面を黒く塗りつぶす
        text = font.render('abc', True, (255, 255, 255))   # 表示する文字列を作る
        screen.blit(text, [50, 100])   # 画面に文字列を貼り付ける
        pygame.display.update()

        for event in pygame.event.get():
            if event.type == QUIT:
                pygame.quit()
                sys.exit()

if __name__ == '__main__':
    main()

Pygame入門 画面を表示する

import pygame

# 定数QUITを使うため。importしない場合は、pygame.QUITとする。
from pygame.locals import *

import sys

def main():
    pygame.init()
    screen = pygame.display.set_mode((400, 300))   # 画面の大きさを設定する
    pygame.display.set_caption('display')   # 画面のタイトルを設定する

    while True:
        screen.fill((0, 0, 0))   # 画面を黒く塗りつぶす
        pygame.display.update()

        for event in pygame.event.get():
            if event.type == QUIT:
                pygame.quit()
                sys.exit()

if __name__ == '__main__':
    main()

プログラミング言語のScratchをLinux(Debian)にインストールしてオフラインで使う

$ sudo apt install git
$ sudo apt install nodejs npm
$ git clone --depth=1 https://github.com/LLK/scratch-gui.git
$ cd scratch-gui
$ npm install
$ npm run-script build

「build」ディレクトリの中の「index.html」をブラウザで開く

Python入門 数当てゲーム

import random
import time

low = 1
high = 200
answer = random.randint(low, high)
count = 0
start_time = time.time()
print(f'{low}から{high}の数を当ててください。')

while True:
    print('')
    print('入力してください > ', end='')
    guess = int(input())
    count += 1
    if answer > guess:
        print('答えはもっと大きいです。')
    elif answer < guess:
        print('答えはもっと小さいです。')
    else:
        print('正解です。')
        break

end_time = time.time()
print(f'{count}回で正解しました。')
print(f'{int(end_time - start_time)}秒で正解しました。')

LibreOfficeで文字列を日付に変換する

f:id:collatz:20220315112516p:plain

A列に日付を表す文字列を入力する。

変換できた文字列の例

1月1日
01月01日
2022年1月1日
2022年01月01日
2022/1/1
2022/01/01
1-1
01-01
2022-01-01
B列に「DATEVALUE」関数を入力する

引数はA列にする
例:B1セルならば「=DATEVALUE(A1)」
これにより、日付文字列がシリアル値に変換される

B列の値をコピーして、C列に数値として貼り付ける

「形式を選択して貼り付け」→「数値」

C列のセルの書式設定を日付に変える

Pythonのopenpyxlで取得したエクセルのセルのタプルをmapで値のリストに変換する

エクセルファイルの1行目のデータを取得して、
その中の各セルオブジェクトの値(valueプロパティ)のリストを作成する

import openpyxl

wb = openpyxl.load_workbook('example.xlsx')
ws = wb.active

a = list(map(lambda x: x.value, ws[1]))
print(a)

wb.close()