Python で dataclass を使ってクラスが保持するデータを簡単に定義する
Python 3.7 からクラスで保持させるデータを簡単に定義出来る dataclasses がサポートされました。 今回は「dataclass を使った場合」「使わない場合」の書き方を比較してみます。
Python 3.7 からクラスで保持させるデータを簡単に定義出来る dataclasses がサポートされました。 今回は「dataclass を使った場合」「使わない場合」の書き方を比較してみます。
Python で urllib3 を利用する場合、以下の条件を満たしていると ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+
エラーが表示されます。
この問題を解決するには以下、いずれかを実行します。
Python で文字列を結合したり、フォーマットを指定するには str.format(args, *kwargs) を使う方法があります。 Python 3.6 からは フォーマット済み文字列リテラル、俗に言う「f 文字列」がサポートされ、より簡単に定義出来るようになりました。
以下は「文字列を結合して表示する」という目的を異なる方法で実装した例です。
1 2 3 4 5 6 7 8 9 10 11 |
|
静的サイトジェネレーターである MkDocs に関して、日本語の情報源としては Mebiusbox さんがお書きになっている MkDocsによるドキュメント作成 が最強なのでは無いかと思います。 余談ですが 「動かして学ぶ!Rust入門」の執筆 によると Mebiusbox さんは さんは 動かして学ぶ!Rust入門 の著者でもあるそうです (すごい)。
以前に HBFM (Markdown 拡張) を追加した MkDocs の Docker イメージ というメモを書きました。 このは ハートビーツ さんが作成されたプラグインを取り込んだ MkDocs の Docker イメージを利用する前提になっています。 今回は Docker コンテナは利用せず、ローカルに MkDocs をインストールする手順をメモしておきます。
XPRESSO はネットワークテストの自動化ツールである pyATS にブラウザからアクセス可能な UI を提供します。 今回は XPRESSO のインストール手順をメモしておきます。 尚、タイムゾーンの指定など、設定に関しては省略しており、インストール手順までだけをメモしています。
Python から Excel を操作するライブラリは幾つか存在しますが、特に openpyxl が有名のように思います。 但し、現状の openpyxls には「複数範囲に対して、一括で外枠を定義する」ようなメソッドが無いようなので、サンプル実装をメモしておきます。 今回は以下を利用しました。
尚、罫線に限らない「書式全般の操作」については openpyxl 公式ドキュメントの Working with styles で言及されています。
CiscoConfParse で Cisco IOS のコンフィグを解析し、IP アドレスなどの情報を抽出するサンプルをメモしておきます。 CiscoConfParse は 1.7.24 を使いました。
Python のパッケージ管理ツールは幾つかあります。 Armin Ronacher さんが開発した rye が使いやすかったのでインストールや基本的な利用手順をメモしておきます。 Armin Ronacher さんは rye の他に flask や jinja、click 等を開発されているそうです。 また、rye が初めて公開されたのは 2023 年 5 月だそうです。 今回は macOS 13.4.1 で検証しました。
George Shuklin さんが Wildcard masks operations in Python という記事で「Python でワイルドカードを操作する方法」をまとめてくださっています。 ワイルドカードが関連しないケースも含め、「プリフィックス長」「ネットマスク」「ワイルドカード」を相互変換する Python サンプルコードをメモしておきます。
Python で CLI ツールを作成する際、引数の処理には argparse が便利です。 argparse
の基本的な使い方を幾つかメモしておきます。