uvは超高速なPythonパッケージマネージャ 仮想環境作成・パッケージ管理・Pythonバージョン管理を一元化 Rust製で10〜100倍の速度向上
![Pythonパッケージ管理 [uv] 完全入門](https://cdn-ak-scissors.b.st-hatena.com/image/square/5eb3a78647bb994227e2b72139af64db0d7f33f3/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F8e1ff1eaedc0427bbc88de937a2aa2f6%2Fslide_0.jpg%3F35132442)
作業メモ。モダン Python 速習。 AI 周りのツールを動かしていたら TypeScript だけでやるには無理が出てきたので、久しぶりに Python の環境構築をする。 具体的には TestGen LLM を動かしたい。 Python はたまに触るけど、基本 2.x 時代の知識しかない。 基本的にこの記事を読みながら、細かいアレンジをしている。 追記 rye が ruff と pytest を同梱してるので rye fmt, rye check, rye test で良かった uvicorn を叩くより、 fastapi-cli を使って起動したほうが良さそうので変更 基本方針: Rye に全部任せる 良く出来てると噂に聞いたので、 rye に任せる。 自分が Python が苦手な点は pip を下手に使うと環境が汚れていく点で、基本的に rye で閉じて管理させる。システムの
start: if [ -n "${ENV}" ]; then \ .venv/bin/dotenv --file ${ENV} run -- .venv/bin/python src/main.py; \ lint: poetry run pysen run lint lint-fix: poetry run pysen run format && \ poetry run pysen run lint test-unit: poetry run pytest install-dev: poetry install install: poetry install --no-dev 本番環境のみ入れたいパッケージがある場合 IoT開発等では、開発時はMacで本番はラズパイみたいなケースの場合、アーキテクチャ依存で追加できないパッケージがあったりします。 例えばRPi.GPIOは、GPIOが
砲撃する自走砲(PzH2000自走榴弾砲)。自走砲は戦車によく似ていますが、戦車ではありません。*本編とは関係ありません。 こんにちは、エムスリー基盤開発チーム小本です。 Pythonのパッケージ管理周りでは、 「setup.pyでrequirements.txtを読み込むのが普通なんですよね?」 「pipenv があれば venv はオワコンなんですね?」 「pyenvは要らないんですよね!?」 「Pythonは歴史が古い分、Rubyなどに比べてカオス」 みたいな混乱をよく目にします。 実際、複数のツールがあって(一見)複雑です。また「なぜこうした状況にあるのか」がドキュメント化されているわけでもありません。 なので、私なりに整理してみることにしました。 ※「追伸」を追加しました。この記事では汎用プログラミング言語としてPythonを使うケース(Webアプリとか、CLIツールとか、ライブ
ソフトウェアエンジニアにとって、不具合に対抗する最も一般的な方法は自動化されたテストを書くこと。 テストでは、書いたプログラムが誤った振る舞いをしないか確認する。 一口に自動テストといっても、扱うレイヤーによって色々なものがある。 今回は、その中でも最もプリミティブなテストであるユニットテストについて扱う。 ユニットテストでは、関数やクラス、メソッドといった単位の振る舞いについてテストを書いていく。 Python には標準ライブラリとして unittest というパッケージが用意されている。 これは、文字通り Python でユニットテストを書くためのパッケージとなっている。 このエントリでは、最初に unittest パッケージを使ってユニットテストを書く方法について紹介する。 その上で、さらに効率的にテストを記述するためにサードパーティ製のライブラリである pytest を使っていく。
Chainer チュートリアル 数学の基礎、プログラミング言語 Python の基礎から、機械学習・ディープラーニングの理論の基礎とコーディングまでを幅広く解説 ※Chainerの開発はメンテナンスモードに入りました。詳しくはこちらをご覧ください。 何から学ぶべきか迷わない ディープラーニングを学ぶには、大学で学ぶレベルの数学や Python によるプログラミングの知識に加えて、 Chainer のようなディープラーニングフレームワークの使い方まで、幅広い知識が必要となります。 本チュートリアルは、初学者によくある「まず何を学べば良いか」が分からない、 という問題を解決するために設計されました。 初学者は「まず何を」そして「次に何を」と迷うことなく、必要な知識を順番に学習できます。 前提知識から解説 このチュートリアルは、Chainer などのディープラーニングフレームワークを使ったプログ
関連ファイル サンプルコード(日本語版) サンプルコード(原著者) 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正が施されている場合がありますので、書籍最終ページの奥付でお手持ちの書籍の刷版、刷り年月日をご確認の上、ご利用ください。 正誤表 訳者まえがき まえがき 第Ⅰ部 Pythonプログラミングの基礎 1章 Python入門 1.1 式をインタラクティブシェルに入力する 1.2 整数、浮動小数点数、文字列型 1.3 文字列の連結と複製 1.4 変数に値を格納する 1.4.1 代入文 1.4.2 変数名 1.5 最初のプログラム 1.6 プログラムを分析する 1.6.1 コメント 1.6.2 print()関数 1.6.3 input()関数
とりあえず mycli と aws-shell のスクリーンキャストを見てください。 prompt_toolkit はこのようなリッチコンソールアプリを作るためのライブラリです。 Windows でも動きます。 Jupyter (ipython notebook) を切り離した、コンソール版の ipython も次のメジャーバージョンでは readline ベースから prompt_toolkit ベースに作りなおされています。 ipython 以外にも ptpython というシェルもあり、 ipython の各種 magic が不要な場合はこちらで十分でしょう。 https://github.com/jonathanslenders/python-prompt-toolkit#projects-using-prompt-toolkit には、他にも prompt_toolkit を採用
Keynote - Jacob Kaplan-Moss - Pycon 2015 - YouTube The programming talent myth [LWN.net] PyCon 2015で、Djangoの貢献者であるJacob Kaplan-Mossが興味深い基調講演をしているので紹介する。LWM.netでほぼ全面書き起こしに近いまとめがあったので助かった。 自己紹介 Kaplan-MossはDjangoの貢献者であり、Herokuのセキュリテイ部門の部長である。PyCon参加者としては歴史が長く、その他のカンファレンスでもよく発表している。Pythonコミュニティは「自分にとってこの業界におけるとても重要なもの」であり、PyConの基調講演を行うということは、「自分のキャリア上の絶頂」である。 自分の最初のPyConの発表は2005年のことで、PythonとAppleScri
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー 一部読者から高い評価をいただき,絶版となりながら中古市場でプレミア価格がついていた拙著「みんなのPython Webアプリ編」のHTML版をお送りします。Pythonを使って,Webアプリを開発するための方法を,基本的な事柄から積み重ね式に解説した書籍をHTMLにしたのが本コンテンツです。 編集部のご厚意で作ってもらった配布用PDFをベースに作っています(PDF作成だけでなく,出版契約の解除など必要な手続きを快く受けて頂いた担当様にはとても感謝しております)。構成などは著書をベースにしていますが,HTML化する過程で少し手直ししてあります。特にPython 2.7で動かないサンプルコー
PyConJP2014で競技プログラミングについてLTしてきました。 発表で出した問題と、主要な競技プログラミングのコンテストについて紹介したいと思います。 発表資料 発表で紹介した問題の回答について 発表でみなさんに考えてくださいと言った問題です。 単純に全探索をすると時間制限にひっかかってしまうこの問題。 a + b + c + d = 0 は、 a + b = - (c + d) というのを利用して解いた例がこんなかんじになります。 Pythonではじめる競技プログラミング 例題の解答例 create_pairsの関数でAとB,CとDをそれぞれ足し合わせた数を計算し、それがいくつあるかをカウントしておきます。 あとはAとBの合計値をfor文でまわして、CとDの合計値のなかに-(A+B)がいくつあるかを探しています。 この解法だと計算量はO(N **2)なので、Nが200でも間に合いま
はじめに こんにちは、Python界の情弱です。最近は、以前に比べてPythonを触る人が増えてきたような印象ですが、それでもやれeasy_installだ、やれvirtualenvだと言われても、どうやって設定したらよくわからない、という発言をちらほら見かけています。 でもぶっちゃけ超簡単なので、とりあえず初めてPythonの環境設定する人はこれをコピペで動かして下さい。 (2017.01.26追記) 注意:この記事はもう古いので、Python2をいまから使い始めるなんていう奇特な人以外は次の記事を読んで下さい。 ymotongpoo.hatenablog.com 要点 はまりどころは多分次のどれかだと思う Pythonのバージョンをどれ使っていいかわからない 「easy_installを使え」と言われるがeasy_installというパッケージが見つからない virtualenvの入れ
iOS用のアプリは通常、開発アカウントを取得し、Macを使って開発します。 開発アカウントを取得するほどではないが、iOSデバイス上で何かやりたい処理がある、という人はいるでしょう。 あるいは、プログラム好きな人なら率先してiOSデバイス上でプログラミングをしたいと思うのではないでしょうか。 そうしたニーズに存分にこたえることができる、iOSデバイス上で動作する統合開発環境がPythonista 3です。 2016年9月21日に開催されたPyCon JP 2016で @equal_001 さんがPythonistaについて発表されていたのでご紹介。 Python支持者のことをPythonistaといいますが、アプリ名はそこから取ったんでしょうね。 正真正銘のPythonが内蔵されていて、ローカルで動きます。 [参考] Kazuhiro AbeさんはTwitterを使っています: 「インタプ
2013/12/02 00:00 ※ 商品のリンクをクリックして何かを購入すると私に少額の報酬が入ることがあります【広告表示】 DevOpsですね!CIですね!botですね! Python Advent Calendar 2013 の2日目です。 スクリプトにパスワードを書きたくないときのお話。 鍵でノーパスワードログインできるなら良いですが、ID/Password渡さないといけない場合もありますよね。 本エントリはOS X 10.9、Python3.3.3rc1で確認しています。 実行時に入力してもらう 書きたくないのであれば、入力してもらえば良いですね。 ビルトイン関数のinputでどうでしょう。 >>> pswd = input('input your passowrd: ') #python2では raw_input でした input your passowrd: passwor
しばらく Mac からおさらばしていたのですが、ゆえあって戻ってきました。 Python 3.3 ベースで Python 環境の構築をしたので、参考までに手順を残しておきます。 1. Homebrew で Python 3 をインストール とりあえずベースになる Python を用意します。いまならもう Python 3 を普段使い用にできるので、 Python 3 を用意します。 $ brew install python3 MacPorts でも大丈夫だと思います。 2. 自分用のデフォルト環境を作る システムの Python に直接自分が普段使うツール類をインストールするのは憚られるので、自分用のデフォルト Python を用意します。 Python 3.3 では venv が標準ライブラリにあるので、この手順で virtualenv を手動で準備する必要がなくなりました。 $ mk
本気でPythonをやりたいならあわせて読みたい「え?君せっかく Python のバージョン管理に pyenv 使ってるのに Vim の補完はシステムライブラリ参照してるの?」 2013-06-23 21:30 おしりに追記しました 2013-06-24 10:00 設定等微修正しました 2013-06-24 15:20 quickrunの設定を修正しました 2013-07-03 14:30 間違い等を修正しました 様々な開発環境を試してきましたが、結局Vimに落ち着いてしまっているAlisueです、どうも。 Vimを最強のPython IDEにするを書いてからかれこれ二年ほどが経ちます。 二年もあると新しいVimプラグインが増えるなどし、先の記事内容では最強ではなくなってしまいました。なのでこの辺でもう一度現在の最強をまとめてみたいと思います。 基本方針 プラグイン関係はすべてNeoBu
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く