python
pythonの型ヒント・型指定の書式をまとめます余計な説明は省略して、書式だけ列挙します 変数に対する型ヒント name: str = "ABC" 関数に対する型ヒント 引数がint型、返り値がstr型 def func(x: int) -> str: return str(x) 複数の値を returnする場合 def …
WIFIのパスワードをQRコードで共有する方法ですQRコードを作って,SSIDとパスワードを埋め込むだけで良いのですが QRコード作成サイトを使う→パスワードが流出するので好ましくない スマホやPCのQRコード作成アプリを使う→面倒くさい ということで pythonの…
いろんな言語・コマンドラインで,日付の足し算・引き算をする方法をまとめます.例として,3月1日の1日前を計算を考えます.この計算は,うるう年があるので面倒です.たとえば 2021年3月1日の前日は 2月28日 2020年3月1日は前日は 2月29日 となりますが…
matplotlibでグラフをプロットするときに、複数の軸ラベルを一つの共通の軸ラベルにまとめる方法です例えば以下のグラフには X軸にラベル(ABC)が二つありますが,これを と一つにまとめます. 方法 軸ラベルの指定は set_xlabel()を使いますが import matp…
pythonで方程式を解く方法です 一次方程式を解く 一次方程式 を について解きます import sympy x = sympy.symbols('x') eqn = sympy.Eq(5*x + 3, 0) ans = sympy.solve(eqn) print(ans) 出力は [-3/5]で,答えは です 連立一次方程式を解く 連立一次方程式 …
pythonのpandas でデータの差分を確認する方法です2つのDataFrameをセル単位で比較し、値が一致しないセルをハイライト表示します import pandas as pd def style_diff(col, target=None, props=''): if col.name in target.columns: t = target[col.name] …
Pythonで構文解析を行う方法です.BNFを書いてがっつり実装する場合は Lark などを使いますが,このエントリでは簡便な方法として pyparsing モジュールの使い方を紹介します.ログファイルから特定のデータだけを抜き出す,といった用途ならpyparsingで十分…
Python でモジュールをimportする際のサーチパス(検索パス)を追加する方法をまとめます 検索パスの確認方法 sys.path という変数を見ると,サーチパスが確認できます import sys print(sys.path) 検索パスの追加方法 パスの追加方法は大きく2種類に分類で…
scipyの integrate モジュールを使うと定積分が簡単に計算できます spicy.integrate の使い方 例えば を計算するコードは,たったの三行です. from scipy import integrate from math import sin, pi print( integrate.quad(sin, 0, pi/2.)) 結果は数値解な…
jupyter notebook などで matplotlib を使ってグラフをプロットするとX軸の軸ラベルやタイトルで日本語が表示できない・文字化けする場合があるその時は,日本語フォントの設定を見直すと良い 日本語フォントの設定 import matplotlib.pyplot as plt plt.rcP…
pythonのmatplotlib でグラフに y=x の直線を書く方法 fig, ax = plt.subplots(1,1) ax.axline((0, 0), slope=1) axlineを使って,原点(0,0)を通り傾き 1の直線を描く方法が一番使い勝手が良い
PyTorch にマルウェアが混入しssh鍵を抜き取れられる被害が出ているそうです pytorch.org本家サイトに,被害の有無をチェックするコードが紹介されています python3 -c "import pathlib;import importlib.util;s=importlib.util.find_spec('triton'); affect…
python で全角英数の文字を、半角英数に変換する方法です import mojimoji x = "文字列アイウエオABCDE" y = mojimoji.zen_to_han(x, kana=False) print(y) mojimoji というモジュールを使うのが楽です。kana=Trueを指定すると、全角カタカナも半角カナ…
Emacs からjupyter notebookを使う方法をまとめますjupyter notebookは python やRを使った開発 グラフをプロットしながらデータをこねくり回すデータサイエンス・機械学習的な作業 流行りのデープラーニング などで非常に便利ですが、これらがすべて Emacs …
一般化逆行列(擬似逆行列,最小二乗法に対応するやつ)を python で計算するサンプル特異値分解(SVD)が必要なので,実装は numpy を使いますc++/eigen で実装したコード https://pyopyopyo.hatenablog.com/entry/2021/09/07/090000 のpython版になります im…
pythonでローカルのネットワークインタフェースのIPアドレスを調べる方法 def get_local_ip_address(): from socket import socket, AF_INET, SOCK_DGRAM s = socket(AF_INET, SOCK_DGRAM) try: s.connect(('10.255.255.255', 1)) ipaddr = s.getsockname()[…
jupyter notebook からソースコードだけを抽出する方法です2行でまとめると nbconvertを使う方法が定番.でも動作が遅い 20倍以上高速な jq を使う方法がおすすめ となります.以下,詳細です. nbconvert を使う方法 input.ipynb からpythonコードを取り出…
jupyter notebook の出力は pdf 形式で保存できますその方法は,画面左上の「メニュー」の「名前を付けてダウンロード」から「PDF via LaTeX (.pdf)」を選ぶだけ.ただし,この機能が正常に動作するためには LaTeX がインストールされていること 日本語用に…
python でヒストグラムを正規化(面積を1.0にする)する方法です サンプルコード import numpy as np import matlplotlib.plt as plt data=[1,2,2,3,3,3,4,4,4,4] # 正規化されたヒストグラムを計算する hist, edges = np.histogram(data, density=True) w = e…
python のヒアドキュメントの使い方をメモしますついでにpython-3.6で導入された f-strings を使って変数置換も行います x=123 y="ABC" tmp = f''' x is {x}. y is {y}. x is {x}. '''[1:-1] print(tmp) ポイント f"..." と文字列の先頭に "f"を付けると変数…
Pythonで文字列を時刻に変換する方法です 時刻を表す文字列 時刻を表す文字列にはいくつかのフォーマット(書式)がありますISO8601の例 2020-06-14T13:04:46+09:00 RFC 3339の例 2020-06-14T04:04:46.000Z 2020-06-14T04:04:46.000000Z これらは全部同じ時…
PythonでCUIとかCLIを作る際のTips です.下記の内容を順に書いていきます エラー表示を見やすくする 使い方の説明 実際のコード例 コマンドライン引数の処理 使い方の説明 実際のコード例 Tips は今後も追記していく予定です(最終更新: 2020-06-13) エラー…
正規表現を使うときは,正規表現のエラーチェックをきちんと実装しておいたほうが安全です例外を使って実装すると次のようになります import re pattern = "^c++" prog = None try: prog = re.compile(pattern) except re.error as msg: print("error in reg…
debian や ubuntu でインストール済みのdebパッケージの一覧を調べる方法です(pythonのモジュールの一覧ではなくて,linuxのdebパッケージの一覧です)コマンドラインなら $ dpkg -l 等になりますが、似たことをpythonで実装する場合は apt モジュールを使い…
jupyter notebook が以下のエラーを出して起動しない場合の対処法 File "*********/.local/lib/python3.7/site-packages/tornado/netutil.py", line 174, in bind_sockets sock.bind(sockaddr) OSError: [Errno 99] Cannot assign requested address とりあ…
python のパッケージをコマンド一行で最新版にアップデートする方法です コマンド 普段 sudo を使わずに,--user つけてpipを実行している場合 $ pip3 list --format freeze --outdated | while IFS='==' read pkg dummy; do pip3 install --user --upgrade …
pipコマンドで PyGObjectをインストールしようとすると $ pip3 install PyGObject以下のエラーが出る場合がある Package gobject-introspection-1.0 was not found in the pkg-config search path. Perhaps you should add the directory containing `gobjec…
その名も qrcode という python モジュールがあります qrcode というpythonのモジュール "qr" というコマンドラインのツール が用意されているので,簡単にQRコード(2次元バーコード)を生成するプログラムやスクリプトが実装できます インストール pip経…