ヒトリ歩き

愚痴とかいろいろ書きます

2024-02-01から1ヶ月間の記事一覧

リトライ処理をbackoffモジュールで簡単に実装する

リトライ処理を自分で作り込まずに、backoffモジュールを活用することでよりコードがシンプルになる。 これからはbackoffモジュールを活用していきたい。 backoffモジュールとは backoffモジュールは条件が満たされるまでリトライするためのデコレータ。 ネ…

デコレータでタイムアウトを設定しよう!!

時間がかかる処理に対して、タイムアウトを設定したい場合に使用するためのデコレータとして、timeout_decorator.timeoutがあるので、使ってみた。 用途として、サーバに対する検索のリクエストを実行した際に、検索に時間がかかる場合にタイムアウトを設定…

FastAPIのエラーハンドラーを使ってコードをシンプルに!!

エラーハンドラーの設定をすることで、try-except毎にレスポンスの組み立てが不要になり、コードがシンプルになると考える。 自分はこのエラーハンドラーの機能があり、助かってる。 エラーハンドラーの設定 特定のエラーに対する応答結果をカスタマイズした…

Pythonのclick.commandを使えば簡単!コマンドの実装方法

シェルスクリプトで頑張って作っていたパラメータの解析もPythonのclick.commandを使えば簡単に実装できるし、コマンドで必要なことがモジュールとして提供されている。 シェルスクリプトから脱却して、Pythonでコマンドを作ろうぜ。 フォントの色、スタイル…

Pythonのclick.commandを利用して簡単にプログレスバーを作成

click.commandを使えば、コマンドのプログレスバーを簡単に実現できる。 少し感動した自分がいる。 click.commandとは コマンドラインインタフェースを作成するためのPythonのパッケージ。 基本例 イテレータのデータを処理する場合、click.progressbarに処…

SQLAlchemy ORMでのJOINのやり方

SQLAlchemyのORMを使ったSELECT時のJOINのやり方がよくわからなかったので、調べてみた。 やりたいこと studentテーブルのschool_idとschoolテーブルのidを結合して、 student.id,student,name,school.nameを取得したい。 テーブルのデータは以下のとおり。 …

データベース連携に便利なPython ORMツール - SQLAlchemy

SQLAlchemyを使うことが増えてきたので・・・。 SQLAlchemy とは? SQLAlchemyは、Python向けのORM(オブジェクト リレーショナル マッパー)。 効率的かつ高パフォーマンスデータベースアクセスを目的に設計されているとのこと。 www.sqlalchemy.org データ…

2024年1月の振り返り

1年の始まりの月なので、なんとか良い感じにやることをできている。 これから仕事の調子とかいろいろあるけど、なんとか継続してやっていきたい。 朝活または夜活を20分やる 2023年は休みの日に自分の時間を確保できなかった。 休みの日に何かやろうとすると…

psycopg2のインストールでエラーが出た話

sqlalchemyを使ってDBの検索をやろうとして、psycopg2モジュールが不足していたので、pip install をしたところエラーが出た。 ググって最初とかに出た内容を試したけど、エラーが解消しなかったので、メモとして残しておく。 環境とエラー内容 エラーが発生…

コンテキストマネージャの使い方とは?

はじめに ロバストPythonでコンテキストマネージャが出てきたので、使い方を簡単に整理する。 コンテキストマネージャが使えるか使えないかがPython初級者と中級者との差かな・・・。 使い所はどこ? ファイルのオープン/クローズや、データベースの実行成…