【PostgreSQL】ORDER BYにCASE式を指定すると任意のソート順にできる理由

プログラミング
ORDER BY に CASE式を指定すると、戻り値に応じたソート順にできるというやつ。 SELECT * FROM any_table ORDER BY CASE any_column WHEN "va...

【Python】os.getenvとos.environ.getの違い

プログラミング
結論から言うと 違いはありません。等価です。 以下、順を追って詳細を説明します。 Pythonにおける環境変数の取得方法 まず前提のお話から。主に3通りありますね。 os.getenv('ENV_VAL'...

【discord.py】message.channelがTextChannel以外なら無視する

プログラミング
コード @client.event async def on_message(message): if not isinstance(message.channel, discord.TextChannel): ...

PHP7の型宣言

プログラミング
引数と返り値に対して型宣言が可能。 <?php declare(strict_types=1); // 厳密な型チェックを有効にする /** * 型宣言のある関数定義 * * @pa...

【JavaScript】Array.prototype.includes と Array.length の速度比較

プログラミング
これはなに 以下の条件式を書く場合、どちらが左にあるべきか?という問いに対する調査と回答。 array.length === 0 || array.includes(e) なお、両者の真偽値の頻度には偏りがないとする。 ...

【Python】カレントディレクトリのファイル数をカウントする

プログラミング
import os path = os.getcwd() files = os.listdir(path) count = len(files) print(count) 参考:Pythonでカレント...

【Python】18桁の整数をランダム生成する

プログラミング
何桁でも使える方法ですが、例えば Discord のユーザ, チャンネル, メッセージ等に割り振られているIDは、いずれも18桁の整数と決まっています。(稀に例外がありますがその説明は割愛します) 何かとダミーのデータが必要にな...

【Python】辞書/JSONで定数を管理する

プログラミング
マジックナンバーは定数化して管理するのが定石ですが、定数が増えてくると管理が大変です。 そこで辞書を使って管理するためのTIPSを紹介します。 ※ 記載しているIDは生成したダミーデータです。【Python】18桁の整数を...

【Python】使うべきではない名前の一覧を取得する

プログラミング
Python では test.py という名前で保存してはいけないというのは有名な話です。理由は標準の test パッケージを上書きしてしまうからですね。test --- Python 用回帰テストパッケージ Python 3.7....

【discordpy】リアクションを付けた人に役職を付与する

プログラミング
仕様 #はじめにお読みください というチャンネルのメッセージにリアクションを付けると役職が付く。 いわゆる関門的なセキュリティ。 ソースコード import discord import os clie...