ABCABC Tech Catalog

#Python

12件の記事

Tips

意外と知らない人も多い?知っておいて損のないPythonのmオプション

Python の m オプションを使うと、モジュールを単体で実行することが可能です。この記事では、簡易HTTPサーバーの立ち上げ、JSONデータの整形、モジュールのドキュメント取得などの便利な使用例を紹介しています。

伴拓也
Tips

Pythonのリスト結合時の書き方による違いと使い分け

Pythonのリスト結合時は、 + 演算子を使うことによって繋ぐこともできますが、別途 extend というメソッドが用意されてもいます。本記事ではこれらの違いを扱い、どちらの手法をどのように使い分けていくべきなのか、について説明します。

伴拓也
Tips

Python 3.12 から f-string の挙動が結構変わっている

Python 3.6 で導入されている文字列リテラル f-string ですが、最近、3.12で大きく挙動が変わっています。歴史を紐解いていきながら、新しい形でf-stringを活用していくための変更点についてまとめています。

伴拓也
Tips

Python の型ヒントで使用する typing.List が非推奨になっていた

Pythonの型ヒントでは、Python 3.9以降、typing.Listが非推奨となり、list[int]の新記法が推奨されています。この変更の経緯であったり、変更に対応するための簡単な方法についてまとめています。

中村卓矢
Tips

Python の Linter / Formatter をまとめられる Ruff を試す

チーム開発を行う際はどんな言語であれコードに統一性を持たせるためにLinter/Formatterを導入するかと思います。最近Pythonでそれらの機能をまとめて・高速に行えるRuffが注目を浴びているということで、実際にFlake8+Blackの環境から移行のテストを行いました。本記事ではその手順をまとめています。

伴拓也
Tips

Pythonのforループのネストが深いなら使いたいitertoolsの組みあわせイテレータ

Pythonの標準ライブラリ「itertools」を使用すると、forループの深いネストを防止することができます。今回はitertoolsの中でも特によくあるユースケースを紹介します。itertoolsには、その他にも車輪の再発明を防ぐような形でイテレータに関しての処理を行う関数が用意されていますので、そちらも紹介しています。

伴拓也
Tips

Pythonで非同期処理をするときのasyncioの使い方

今回はPythonで非同期処理を行える標準ライブラリである「asyncio」の使い方についてまとめてみます。Pythonで同時に複数の処理を行う場合は非同期処理もしくは並列処理を行うことになると思いますが、asyncioは最も手軽で、I/Oバウンドな処理を行うのに最適です。

伴拓也
Tips

Pythonの数値の小ネタと演算子のオーバーライド

今回はPythonの公式ドキュメントから得られた数値の小ネタと演算子のオーバーライドについての情報を紹介しています。数値の3つのType(int、float、complex)や特殊な表記法(虚数単位の使用や_を使った桁区切り)といった小ネタから、演算子のオーバーライドの挙動についても扱っています。

伴拓也
データ関連

BigQueryでJSONを読み込むときにinsert_rows_jsonを使うと404が出るのなぁぜなぁぜ?

新年一発目の記事はBigQueryでJSONファイルを読み込むときにinsert_rows_jsonをはじめとするストリーミング挿入を行うとハマりかねない罠についての記事です。BigQueryのストリーミング挿入には注意点が多いので、そこを意識した上で使う必要があります。

伴拓也
研究開発

このブログの内容を踏まえた回答をLLMから取得するスクリプトを作る

今回は、自前のデータを踏まえた回答をLLMから得るための方法論をなぞって実際にPythonのスクリプトをどのように実装すれば良いかについてまとめてみます。自前のデータとしては本ブログのMarkdownデータを活用します。

伴拓也
研究開発

自前のデータを踏まえた回答をLLMから得るには

ChatGPTをはじめとして、大変便利に活用が進んでいるLLMですが、やはりやってみたくなるのは自前のデータとの組み合わせかと思います。本記事では、自前データを踏まえた上での回答をLLMから取得するにはどうすれば良いかの方法論についてまとめました。

伴拓也
Tips

Pythonでヘッダ付csvを読むならDictReaderがとても便利

今回はChatGPTからのレスポンスを発端として知った、PythonのcsvモジュールのDictReader/DictWriterについて紹介します。標準モジュール内にはこのように便利なメソッドが含まれていることが多く、ドキュメントを確認しておくことで車輪の再発明を防ぐことが出来ます。

伴拓也