PHPのプログラムをPHPに組み込まれているWebサーバーで実行する

PHPのプログラムを作成する。作成したプログラムを「hello.php」とする。コマンドラインで「hello.php」が保存されているディレクトリに移動する。下記のコマンドを実行する。「8000」の部分はポート番号なので、好きな番号でよい。 php -S localhost:8000ブ…

Bingの検索結果のリンクを開く時に新規タブで開かないようにする方法

Bingを開く https://www.bing.com/ 画面右上の三本線(ハンバーガーメニュー)を開く 「設定」→「詳細」を開く 「検索」→「検索結果」の中の「新しいタブまたはウィンドウに検索結果のリンク先を開きます」のチェックを外す 画面下に出てくる「保存」ボタンを…

夏目漱石の「明暗」と同じ内容の小説をChatGPTに書いてもらう 2回目

依頼 次の登場人物と出来事を使って小説を書いて。#登場人物 登場人物1 名前:医者 白いだぶだぶした上着を着ている。 患者に正直に事実を告げる。 医者は嘘をつくべきでないと考えている。登場人物2 名前:津田 痔を持っている。#出来事 医者が津田の痔を診…

夏目漱石の「明暗」と同じ内容の小説をChatGPTに書いてもらう 1回目

依頼 次の登場人物と出来事を使って小説を書いて。#登場人物 登場人物1 名前:医者 白いだぶだぶした上着を着ている。 患者に正直に事実を告げる。 医者は嘘をつくべきでないと考えている。登場人物2 名前:津田 痔を持っている。#出来事 医者が津田の痔を診…

1/9998の小数第n位から第m位までを表示するPythonのプログラム

def next_digit(): numerator = 1 denominator = 9998 def shift_digit(): nonlocal numerator numerator *= 10 digit, numerator = divmod(numerator, denominator) return digit return shift_digit def get_digit_sequence(n, m): get_next_digit = next_…

GIMPで他のファイルのレイヤーを追加する

追加するレイヤーをクリップボードにコピーする 追加するレイヤーを選択する。 「選択」→「すべて選択」を実行する。 「編集」→「コピー」を実行する。 追加先のファイルでレイヤーを生成する 追加先のファイルを選択する。 「編集」→「クリップボードから生…

GIMPで画像を左右半分に分割する

ガイドを追加する 「画像」→「ガイド」→「新規ガイド(パーセントで)」をクリックする。 「方向」で「垂直」を選ぶ。 「位置(パーセントで指定)」に「50」を入れる。 「OK」をクリックする。 画像を切り分ける 「画像」→「Slice Using Guides」をクリックする…

GIMPで背景を透過にする

youtu.be アルファチャンネルを追加する 対象の画像を開いて、「レイヤー」→「透明部分」→「アルファチャンネルの追加」を実行する。 (または、右下の対象レイヤーを右クリックして、「アルファチャンネルの追加」を実行する。)もし、対象の画像がすでにアル…

Gimpで4つの同じサイズの画像を縦横に並べて結合する

前提 対象の画像のサイズは、幅800ピクセル、高さ600ピクセル。 対象の画像を縮小して結合し、結合した画像のサイズを元のサイズと同じサイズにする。 対象の画像は下記の4つ 下の画像が完成したもの。 新しい画像を作成する 「ファイル」→「新しい画像」 キ…

ImageMagickで4枚の同じサイズの画像を縦横に結合する

4つの同じサイズの画像ファイルがディレクトリに置かれている。 $ ls 1.jpg 2.jpg 3.jpg 4.jpg $ identify * 1.jpg JPEG 800x600 800x600+0+0 8-bit sRGB 8230B 0.000u 0:00.000 2.jpg JPEG 800x600 800x600+0+0 8-bit sRGB 8229B 0.000u 0:00.000 3.jpg JPE…

Pythonでheif-convertを実行してHEICファイルをJPEGに一括で変換する

カレントディレクトリの拡張子が「HEIC」のファイルが変換対象 変換後のファイル名はHEICファイルの拡張子を「jpg」に変えたもの import subprocess import glob files = glob.glob('*.HEIC') for file in files: file2 = file[:-5] + '.jpg' subprocess.run…

PythonでCSVファイルを辞書に変換する 1列目をキーにして2列目以降を値にする

PythonでCSVファイルを辞書に変換する 1列目をキーにして2列目以降を値にするCSVファイルの内容 sample.csv k1,v11,v12 k2,v21,v22 k3,v31,v32with open('sample.csv', 'r') as f: d = {} for line in f: k, v = line.rstrip().split(',', 1) #最初の1項目の…

EndeavourOSで日本語入力を設定する

パッケージをインストールする インストールするパッケージ fcitx5, fcitx5-configtool, fcitx5-gtk, fcitx5-qt, fcitx5-mozc最初の4個のパッケージは、「fcitx5-im」というグループに入っているので、 「fcitx5-im」をインストールすれば、まとめてインスト…

Python Pillow(PIL)で画像を読み込んでNumPyの配列に変換してRGBの要素ごとに編集する

下記の画像を使用しました。 Biljana JovanovicによるPixabayからの画像 from PIL import Image import numpy as np pil_img = Image.open('eggs-gbd58ab03b_640.png') print('モード', pil_img.mode) np_img = np.array(pil_img) #PILからnumpyへ変換 np_im…

Pythonのglobモジュールで複数の拡張子を指定してファイル一覧を取得する

カレントディレクトリの「画像」ディレクトリの中のファイルの中から 拡張子が「jpg」と「png」のファイルの一覧を取得する。 方法1 import glob types = ('jpg', 'png') files = [] for t in types: files += glob.glob('./画像/*.' + t) for file in files…

Pygame入門 ブロック崩しゲームを作る(途中) ボールと衝突したブロックを消す しかし、ボールはブロックに当たっても跳ね返らない

マウスの左クリックで開始します import pygame import sys SCREEN = pygame.Rect(0, 0, 400, 400) FPS = 30 WHITE = (255, 255, 255) RED = (255, 0, 0) GREEN = (0, 255, 0) BLUE = (0, 0, 255) BALL_SIZE = 20 PADDLE_WIDTH = 60 PADDLE_HEIGHT = 5 PADDL…

PythonのSympyを使って2点を結ぶ2本の線分の交点の座標をベクトルを使って計算する

import numpy import sympy #点p1と点p2を結ぶ線分と点p3と点p4を結ぶ線分の交点を求める def intersection(p1, p2, p3, p4): #各点をベクトルで表す a1 = numpy.array(p1) a2 = numpy.array(p2) a3 = numpy.array(p3) a4 = numpy.array(p4) #方程式で使う変…

forth入門

gforthのインストール Debian系のLinuxの場合 $ sudo apt install gforthgforthの起動 $ gforthgforthの終了 byeと入力するかCtrl+Dを押す1 + 2 を計算する 1 2 + .s1 + 2 * 3 を計算する 1 2 3 * + .s(1 + 2) * (3 + 4)を計算する 1 2 + 3 4 + * .sスタック…

Pygame入門 Sprite同士の衝突を検知して、そのSpriteを削除する

pygame.sprite.spritecollideでSprite同士の衝突を検知できる。 また、引数の指定によって、衝突したSpriteを削除できる。pygame.sprite.spritecollide(sprite, group, dokill) 2番めの引数のgroupに属するSpriteのうち、 1番目の引数のspriteと衝突している…

Pygame入門 ブロック崩しのパドルをスプライトで作る

スプライトの使い方 1.「pygame.sprite.Sprite」を継承してスプライトオブジェクトを作る 2.スプライトグループを作る 3.スプライトグループにスプライトオブジェクトを追加する 4.スプライトグループの更新を実行する グループに追加されているスプライトオ…

Pygame入門 ブロック崩しのパドルをマウスで動かす

import pygame import sys SCREEN = pygame.Rect(0, 0, 400, 400) FPS = 30 WHITE = (255, 255, 255) GREEN = (0, 255, 0) PADDLE_WIDTH = 60 PADDLE_HEIGHT = 20 PADDLE_POS_Y = SCREEN.bottom - PADDLE_HEIGHT * 2 pygame.init() clock = pygame.time.Cloc…

Pygame入門 画像をSpriteにして動かす

import pygame import sys SCREEN = pygame.Rect(0, 0, 400, 400) WHITE = (255, 255, 255) class Ball(pygame.sprite.Sprite): def __init__(self, image_file, pos, speed): pygame.sprite.Sprite.__init__(self) x, y = pos vx, vy = speed self.image = …

Pygame入門 画像を動かす

import pygame import sys SCREEN = pygame.Rect(0, 0, 400, 400) FPS = 30 WHITE = (255, 255, 255) def main(): pygame.init() clock = pygame.time.Clock() screen = pygame.display.set_mode(SCREEN.size) ball = pygame.image.load('ball.png') ball_wi…

Pygame入門 図形(四角)を動かす

import pygame import sys SCREEN_SIZE = (400, 400) WHITE = (255, 255, 255) RED = (255, 0, 0) FPS = 1 def main(): pygame.init() clock = pygame.time.Clock() screen = pygame.display.set_mode(SCREEN_SIZE) ball = pygame.Rect(100, 100, 10, 10) wh…

Pygame入門 マウスポインターの座標を取得する

マウスポインターの座標を取得して、画面に数値で表示する。 import pygame from pygame.locals import * import sys SCREEN_SIZE = (400, 400) def main(): pygame.init() screen = pygame.display.set_mode(SCREEN_SIZE) # 画面の大きさを設定する pygame.…

Pygame入門 図形(四角)を行列に並べて表示する

import pygame from pygame.locals import * # 定数QUITを使うため。importしない場合は、pygame.QUITとする。 import sys SCREEN_WIDTH = 400 SCREEN_HEIGHT = 300 SCREEN_SIZE = (SCREEN_WIDTH, SCREEN_HEIGHT) ROW = 3 # 表示する四角の行数 COLUMN = 5 #…

Pygame入門 図形(四角)を表示する

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) # 画面の大きさを設定する py…

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

IPAexゴシックフォントを使いました。プログラムを実行する前に、 IPAのサイトからフォントファイルをダウンロードして、 カレントディレクトリ(Pythonのスクリプトファイルが置かれているディレクトリ)に配置してください。 import pygame from pygame.loca…

Pygame入門 文字列を表示する

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

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('…