Python
これは、なにをしたくて書いたもの? Ubuntu Linux 20.04 LTSからUbuntu Linux 22.04 LTSへ環境を移していて、pythonコマンドの扱いにちょっと困ったのでメモ。 環境 今回の環境はこちら。Ubuntu Linux 22.04 LTSです。 $ lsb_release -a No LSB modules are…
これは、なにをしたくて書いたもの? 時々、TCPでの通信をローカルポートから別の宛先に転送したくなることがあります。いわゆるプロキシです。 個人的に、こういう時にはsocatをよく使っているのですが。 socatでTCPプロキシサーバーを立てる - CLOVER 転送…
これは、なにをしたくて書いたもの? Pythonで、動作しているスレッドのスタックトレースを出力する方法は?ということで。 環境 今回の環境は、こちら。 $ python3 -V Python 3.8.10 使う標準ライブラリ 今回の目的は、このあたりを使えば良さそうです。 tr…
これは、なにをしたくて書いたもの? Pythonのプログラムを読み書きしていて、importがよくわからなかったので、ちゃんと見てみることにしました。 importとモジュールとパッケージ import自体については、こちらのページを参照。 5. インポートシステム — P…
これは、なにをしたくて書いたもの? Pythonのモジュールインストールにはpipを使うことが多いと思いますが、pipをオフライン環境で使う方法はないかな?と。 要するに、どこかでダウンロードしたパッケージを、オフラインの別の環境で使いたい、みたいな話…
これは、なにをしたくて書いたもの? Pythonは、Linux OSであれば最初からインストールされていたり、比較的新しいバージョンもインストールできたりは するのですが。 最新かというとそうでもないことが多く、それでも新しいバージョンを使いたい場合はDock…
これは、なにをしたくて書いたもの? Azure Storageを、ローカルで動かすためのエミュレーターがあるようです。 開発とテストに Azure ストレージ エミュレーターを使用する (非推奨) | Microsoft Docs ですが、こちらはあまり開発されていないうえに、Windo…
これは、なにをしたくて書いたもの? EmacsでもLSP(Language Server Protocol)を使えるようなので、ちょっと導入してみようかなと。 EmacsでLSPを使う EmacsでLSPを使うには、以下の2つのパッケージが有名みたいです。 lsp-mode LSP Mode - Language Serve…
これは、なにをしたくて書いたもの? Pythonで、Prometheusのクライアントライブラリを試してみようかなということで。 Prometheus Python Client 文字通り、PrometheusのPython向けクライアントライブラリです。 GitHub - prometheus/client_python: Promet…
これは、なにをしたくて書いたもの? データソースとしてTwitterはけっこう使えるので、Pythonでも扱えるようにしたいな、ということで。 PythonでのTwitterクライアントを、ちょっと探して試してみることにしました。 PythonでのTwitterクライアント ちょっ…
これは、なにをしたくて書いたもの? 以前に、Flask RESTfulを使ってみたのですが、JSONをやり取りするのに素のFlaskでもそんなに困らないのでは?と思いまして。 Flask-RESTful — Flask-RESTful 0.3.8 documentation Flask RESTfulを試す - CLOVER って、前…
これは、なにをしたくて書いたもの? ふと、RocksDBのPythonバインディングを使ってみようかなと思いまして。 python-rocksdb RocksDB自体はC++で作られていますが、pytyon-rocksdbを使うことでPythonからも利用することができます。 Welcome to python-rock…
Pythonのインタラクティブシェルで、スクリプトで定義した関数などを読み込みたい、という場合にどうしたらいいのかな? ということで。 使ったPythonのバージョン。 $ python3 -V Python 3.6.9 ヘルプを見てみます。 $ python3 -h どうやら、「-i」オプショ…
これは、なにをしたくて書いたもの? ちょっとした用途でお手軽にデータベースを使いたいといった文脈の時に、JavaだとH2 Databaseあたりが挙がりますが、 そういえばSQLiteを使ったことないよなと思いまして。 1度、ちゃんと見てみようかなと思って今回使っ…
これは、なにをしたくて書いたもの? MongoDBの練習がてらに、PythonからMongoDBにアクセスするプログラムを書いてみようかなと。 MongoDBのPythonドライバー MongoDBのPythonドライバーは、MongoDBのサイトを見るとPyMongoとMotorがあるようです。 MongoDB …
これは、なにをしたくて書いたもの? Pythonでテストコードを書く時には、pytestを使うのが良いという話を聞きまして。1度、自分でも押さえておこうかな、と。 https://docs.pytest.org/en/latest/ 以前、unittestで記載した内容のpytest版です。 unittestラ…
使おうと思った時に忘れているので、メモとして。 Python 3.6以降には、3つの文字列書式化を実現する方法があります。 7. 入力と出力 — Python 3.6.10 ドキュメント フォーマット済み文字列リテラル(f-string) str.format printf 形式の文字列書式化 f-str…
これは、なにをしたくて書いたもの? Elasticsearchに、CSVファイルで用意されたデータをロードする、簡単なスクリプトを書いてみようかなぁと。 こういうのは、バルクローダー的なものでやったり、なにかツールを使ったりすることが多いように思いますが、…
これは、なにをしたくて書いたもの? Pythonを勉強するにあたって、テストコードまわりについて少し押さえておいた方がいいかなぁと思いまして。 Pythonには、いくつかテストをサポートするライブラリ、ツールがあるようです。 コードのテスト — The Hitchhi…
これは、なにをしたくて書いたもの? ちょっと、Jupyter Notebookをインストールしてみようかなと。 Jupyter Notebook Jupyter Notebookは、Pythonのエディタと実行環境をまとめたツールで、プログラムや文章を書いたり、実行結果をまとめたりできます。 Pro…
これは、なにをしたくて書いたもの? Pythonで、簡単にREST APIを作れるフレームワークを知りたいなと思いまして。 PythonでのWebフレームワークといえば、DjangoとFlaskが有名みたいですが、Flask RESTfulが入りやすそうだったので、こちらを 試してみるこ…
これは、なにをしたくて書いたもの? Pythonにはhttp.serverというライブラリがあり、簡単にHTTPサーバー(Webサーバー)を起動することができます。 21.22. http.server --- HTTP サーバ — Python 3.6.9 ドキュメント こんな感じで起動して、簡単にカレント…
これは、なにをしたくて書いたもの? Pythonには、TCPでサーバーを書けるTCPServer、HTTPでサーバーを書けるHTTPServerがあるのですが(そのまま)、これらが シングルスレッドで動作しているので、マルチスレッドにするには?ということで調べてみました。 …
これは、なにをしたくて書いたもの? ちょっとしたPythonの勉強がてらに、TCPのEcho Server/Clientを書いてみようと。 Pythonでの、ネットワークプログラミングの基礎を覚えてみる感じで。 お題 文字通り、PythonでTCPでEcho Server/Clientを書くわけです…
Pythonで、実行可能なバイナリを作成するにはどうしたらいいのかな?と思って調べてみたのですが、PyInstallerというものを 使えばよさそうです。 PyInstaller Quickstart — PyInstaller bundles Python applications GitHub - pyinstaller/pyinstaller: Fre…
これは、なにをしたくて書いたもの? AWS Step Functionsをちょっと試してみたいのですが、どうやらローカルで動かせるみたいなので、ちょっと試してみようと。 AWS Step Functions とは - AWS Step Functions Step Functions Local (ダウンロード可能バージ…
これは、なにをしたくて書いたもの? PythonのAWSクライアントライブラリといえば、Boto 3というものだそうです。 AWS SDK for Python | AWS GitHub - boto/boto3: AWS SDK for Python ドキュメントは、こちら。 Boto 3 Documentation — Boto 3 Docs 1.9.134…
これは、なにをしたくて書いたもの? AWS Lambdaを動かすのに、以前LocalStackを使ってNode.jsで作成した関数を動かしてみました。 LocalStackを使って、AWS Lambdaを試してみる - CLOVER 今回は、ちょっとPythonで作成してみたいと思います。 お題 お題も前…
これは、なにをしたくて書いたもの? ちょっと、Pythonプログラムで使用しているメモリの状況を追ってみようかなと。 Python標準ライブラリにtracemallocというものがあるので、こちらを利用できます。またobjgraphというものを使えば、 オブジェクトの参照…
これは、なにをしたくて書いたもの? uWSGIやGunicornなど、WSGIサーバーは起動時に複数プロセスを利用させるように設定できるのですが、それで複数のCPUコアを 使ってくれるのかを試してみようかなと。 今回は、uWSGIを使って試すことにします。 環境 環境…