読み飛ばしてください おはようございます、しなもんです。 Pythonの公式ドキュメントを読んでたら、なんか知らない便利機能がたくさん出てきました。 なんだこれ。 というわけでまとめてみました。 参考になれば幸いです。 f-stringsの拡張機能 f-strings、便利ですよね。大好きです。 そんなあいつには裏技があるみたいです。 デバッグ用の=演算子 Python 3.8以降、f-stringの中で=演算子を使用することで 変数名とその値を同時に表示できるらしい。
![「Pythonのドキュメントでも読むか~」「え、何その裏技」 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/b614274d5943b5286c16de2e68f9f2628746548e/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Fengineer-festa-ogp-background-074608b13b4bbe67c10ada41e7e2d292.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgwJThDUHl0aG9uJUUzJTgxJUFFJUUzJTgzJTg5JUUzJTgyJUFEJUUzJTgzJUE1JUUzJTgzJUExJUUzJTgzJUIzJUUzJTgzJTg4JUUzJTgxJUE3JUUzJTgyJTgyJUU4JUFBJUFEJUUzJTgyJTgwJUUzJTgxJThCJUVGJUJEJTlFJUUzJTgwJThEJUUzJTgwJThDJUUzJTgxJTg4JUUzJTgwJTgxJUU0JUJEJTk1JUUzJTgxJTlEJUUzJTgxJUFFJUU4JUEzJThGJUU2JThBJTgwJUUzJTgwJThEJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjNGRkZGRkYmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz0xZjQzNDY3ODNmOTIwZTU4NDQ0NDAxNjBmMzRkNDc1Nw%26mark-x%3D120%26mark-y%3D96%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9OTcyJnR4dD0lNDBDaW5uYW1vblNlYTIwNzMmdHh0LWNvbG9yPSUyM0ZGRkZGRiZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWNlMDFmMGI5ZTBkMmEwZDBjNzIyOTVlYTMyZTc0ZmMy%26blend-x%3D120%26blend-y%3D445%26blend-mode%3Dnormal%26txt64%3DaW4gVGVhbSBzaGFodQ%26txt-width%3D972%26txt-clip%3Dend%252Cellipsis%26txt-color%3D%2523FFFFFF%26txt-font%3DHiragino%2520Sans%2520W6%26txt-size%3D36%26txt-x%3D134%26txt-y%3D546%26s%3Dd624d38069571cc4544f495399f516dc)
はじめに PythonのDockerfileを作成する際、ネット上で適切な情報が見つからず、試行錯誤することがあります。そこで、ここでまとめてみます。 完成品 # 開発用ステージ FROM python:3.11-bullseye AS developer ENV PYTHONUNBUFFERED=1 WORKDIR /app RUN apt-get update \ && apt-get install -y --no-install-recommends \ bash=5.1-2+deb11u1 \ && apt-get -y clean \ && rm -rf /var/lib/apt/lists/* COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt COPY . . # ビルド用ス
概要 最近、pythonでUI部分も含めたWebアプリ作成ツールがいろいろ出てきているので、知っている限りでまとめてみようと思います。 (solara追加(2023/5/15), reactpy追加(2023/11/6), taipy追加(2023/12/2), fastui追加(2023/12/11)) FastUI Taipy ReactPy Solara Reflex Flet Streamlit Dash Panel NiceGUI Gradio 各ツールの紹介 FastUI FastAPIのエンドポイントを定義する関数内にUIを定義する感じで書く Taipy 書き方としてはマークダウンっぽいテンプレート用いてUIを作成する感じ DAGツールを簡単に作れるScenarioという機能がある ReactPy その名の通りReactをPythonに移植したような感じのフレームワーク サー
※本記事で言及しているReflexのdiscord内に日本語チャンネルをつくってもらいました。もし、興味をもった人がいたら参加してみてください。 1.PythonだけでWebアプリをつくるライブラリが増えている 最近(2024.05)、Python界隈ではPythonだけでWebアプリが作れるライブラリが増えています。詳しくは他の記事を参照してもらえればと思います。 以下の記事がとても参考になりました。ありがとうございます。 2.ライブラリの分類 こうしたライブラリも大きくわけて2つの種類があるように思います。 ①データ解析の結果を表示するダッシュボードライブラリ ②汎用的なWebアプリをつくるローコードライブラリ ①ダッシュボード系ライブラリ たとえば、上記の記事にも出てきますし、ネットでもかなり情報の多い、StreamlitやDashは項番1のダッシュボードライブラリに該当すると思いま
当サイト【スタビジ】の本記事では、Streamlitの使い方を解説していきます!StreamlitはPythonで実装されたオープンソースのWebアプリケーションのフレームワーク!直感的で簡単にWebアプリを開発できます! こんにちは!スタビジ編集部です! 今回は「Streamlit」の使い方について解説していきます。 Streamlitを使うことで簡単にWebアプリを開発出来て、データサイエンスの分野でもよく利用されるのでマスターしましょう! Streamlit(ストリームリット)とはまずは「Streamlit(ストリームリット)」について簡単に見ていきましょう。 StreamlitとはPythonで実装されたオープンソースのWebアプリケーションのフレームワークです。 PythonのWebアプリケーションのフレームワークというと「Django」や「Flask」などがあり、その仲間になり
はじめに この記事では、Streamlitの概要を説明し、Streamlitを使ってデータ分析Webアプリを実際に開発する中でStreamlitの機能をいろいろと紹介していきます。最終的に以下のようなApacheやTomcatなどのアクセスログを解析するWebアプリをつくります。 Streamlitとは Streamlitは、Pythonで実装されたオープンソースのWebアプリケーションのフレームワークであり、機械学習やデータサイエンス向けのグラフィカルなWebアプリを簡単に作成して全世界に公開(クラウドサービスにデプロイ)できます。 主な特徴 Pythonのみで実装可能(HTMLやCSS、JavaScriptなどフロントエンドのコードを書かなくていい) 豊富なウィジェットが利用可能 Google ColabやJypter Notebookで作成したPythonのコードがほぼそのまま利用で
ABEJA でプロダクト開発を行っている平原です。 先日、バックエンドで使っているGo言語のお勉強しようと「go言語 100Tips ありがちなミスを把握し、実装を最適化する」を読んでいました。その中でinterfaceは(パッケージを公開する側ではなく)受け側で定義するべきという記述を見つけてPythonでも同じことできないかと調べていると(PythonではProtocolを使うとうまくいきそうです。)、どうやら型ヒント機能がかなりアップデートされていることに気づき慌てて再入門しました。(3.7, 3.8あたりで止まってました。。) この記事では、公式ドキュメントを見ながら適当にコードを書き散らし、どの機能はどこまで使えるのか試してみたことをまとめてみました。 docs.python.org 環境 Python: 3.12.1 エディタ: Visual Studio Code Pylan
この記事は株式会社Nuco Advent Calendar 2022の9日目の記事です。 はじめに いきなりお馴染みの「キャッチーでウィットでセンセーショナルな」タイトルで失礼します。 私自身、業務の中でpandasに大変お世話になっており、自戒も込めてpandasの「アンチパターン」をまとめてみました。 この記事を読んで、より快適なpandasライフを送っていただけると嬉しいです。 対象読者 Pythonを使ったデータ分析や機械学習に携わる方 この記事はpandasの基本的な使い方を解説するものではないので注意してください。 表形式ファイルを加工する必要がある方 pandasの強みはリレーショナルなデータ全般です。必ずしもデータ分析や機械学習だけが守備範囲ではありません。 pandasとは pandasの公式ドキュメントの概要には、以下のように記載してあります。 pandas is a
ハイクラス求人TOPIT記事一覧実践的Djangoプロジェクトの設計―開発・運用が楽になる設定ファイルを書こう! アンチパターンとベストプラクティス 実践的Djangoプロジェクトの設計―開発・運用が楽になる設定ファイルを書こう! アンチパターンとベストプラクティス Pythonで広く利用されているWebアプリケーションのフレームワークにDjangoがあります。Djangoで開発を始める際に、プロジェクトの設定ファイルをどのように記述すれば運用が楽になるのか。『Python実践レシピ』の著書もある筒井隆次(ryu22e)さんによる寄稿です。 Djangoは、Python製のWebアプリケーションフレームワークです。もともとニュースサイトを管理する目的で開発が始まり、2005年7月にOSSとしてリリースされました。 Python Software Foundation(PSF)による調査「P
勤怠処理の自動化は、以下の仕組みによって実現しています。 在宅勤務と出社では勤怠処理が異なるため、基本的にフルリモート前提で在宅勤務の場合に処理を行うよう設定しています。 cronによってシェルスクリプトを起動 シェルスクリプトで在宅勤務の判定を行う 在宅勤務の場合、Pythonのプログラムを起動 Seleniumで勤怠入力 実装 Pythonのプログラムは、仮想環境を作成して実行しています。 仮想環境の作成及びSeleniumの導入 Pythonの仮想環境はvenvを使用して作成します。 仮想環境を作成するためには、以下のコマンドを実行します。 <Dir>には任意のディレクトリ名を指定します。 $ python3 -m venv <Dir> $ source <Dir>/bin/activate 仮想環境構築後、seleniumをインストールします。 仮想環境が有効な場合はプロンプトの表
はじめに Pythonはコードが汚くなりがち(個人的にそう思う) そんなPythonくんを快適に書くための設定を紹介します。 拡張機能編 ここでは Pythonを書きやすくするため の拡張機能を紹介していきます。 1. Error Lens before 「コード書いたけど、なんか波線出てるよ💦」 記述に問題があった場合、デフォルトでは波線が表示されるだけ。。。 after Error Lensくんを入れることによって 波線だけでなくエディタに直接表示される。 はい、有能〜 2. indent-rainbow before Pythonくんは インデントでスコープを認識している。 for の f から下に線が伸びてるけど、ちょっと見にくいなぁ after 色が付いてちょっと見やすくなった! 3. Trailing Space before 一見、普通に見えるコード after 末尾にある
Pythonの基礎が理解できてくると、Pythonを使用して実用的に役立つ処理を実行してみたくなるのではないでしょうか。 そこで今回は、Pythonの利用用途として人気である「Webスクレイピング」について解説していきます。スクレイピングの概要からサンプルコードの解説までお伝えしますので、この記事を読んだ後すぐにスクレイピングができるようになりますよ。 PythonでできるWebスクレイピングとは? Webスクレイピングとは、WebサイトからWebページのHTMLデータを取得し、見出しや写真といった特定のデータを抽出するコンピューターソフトウェア技術のことです。Webスクレイピングによって得られた情報は、不要な部分の削除といった加工が自動的に行われます。そのため、人の手でデータを収集する際にかかる時間を大幅に削減できます。 このWebスクレイピングを行うプログラムのことを「スクレイパ」と言
先日、ビジネスパーソン向けの Python 本を執筆したことを書きました。 t2y.hatenablog.jp 本稿では本書のことを「できるPy」と呼びます。 Amazon でいくつかカスタマーレビューもいただいて次のコメントをみつけました。 python3.7 対応ということで、pathlib を使ってる点が(古いpython は切り捨てる!的なところは)潔いと言えば潔いし、日本語のファイル名にも気を配っている記述はオライリーに期待するのは酷なところもある。でもこの本でもNFD問題は全くの記述無し。だめだろ、それじゃ。 Amazon CAPTCHA まさに仰る通りです。執筆時にそのことに気づかずご指摘いただいてありがとうございます。 ここでご指摘されている NFD 問題というのは、ファイル名のみに限った問題ではなく、Unicode の文字集合を扱ってエンコード/デコードするときに発生する
📌 はじめに Pythonで開発を行うにあたり、リンタやフォーマッタ、パッケージマネージャ等のツールの選定は非常に重要な問題です。一方で歴史的な経緯もあり、沢山の選択肢から何を選ぶべきか情報がまとまっていないように感じました。この記事では2021年9月時点でモダンと言えるであろう開発環境を紹介します。基本的にはシェアが高いこと、著名なパッケージで使用されていることを主な選定理由としており、また特定のエディタに依存しないことを前提とします。 本記事で紹介する内容は一つのテンプレートに近く、必要に応じてカスタマイズするもよし、そのまま使ってもよし、として参考になればと思います。(CI/CDについてはPythonとは独立した問題なので触れません。またドキュメント生成はSphinxを推しますが、必須ではないので今回は割愛します。) 📄 要約 "モダン"な開発環境を箇条で列挙すると下記の通りです
機械学習のためのすごいPythonライブラリ Image by Free-Photos from Pixabay はじめに Pythonは機械学習に不可欠な要素で、ライブラリは作業をより単純にしてくれます。最近、MLのプロジェクトに取り組んでいる時に、素晴らしいライブラリを6つ見つけました。ここでは、それを紹介します。 1. clean-text clean-textは本当に素晴らしいライブラリで、スクレイピングやソーシャルメディアデータを処理する時にまず使うべきものです。最も素晴らしい点は、データをクリーンアップするために長く凝ったコードや正規表現を必要としないことです。 いくつかの例を見てみましょう。 インストール #Importing the clean text library from cleantext import clean # Sample text text = """
2021/10 追記 Pyannotate はメンテナが居なくなったため更新が途絶えました。またより表現多く typing を反映できるため、これからは Monkeytype を推奨します。 この記事は何か Python Advent Calendar 2020の 2 日目の記事です(元々 13 日目でしたが、2 日目の参加者が取りやめたので横入りしました)。「Python コードに自動で型を付与し、その型をテストで静的チェックして、保守性を高める方法」をご紹介する趣旨の記事です。 書いた理由 今回紹介するメインツールの pyannotate について、日本語で紹介している記事がほとんどなく、かつ古い情報が多かった為です(python3 サポートがない時代かつ、pytest との連携ができなかった時代)。「Python において型はいるのか?」という議論はしません。 今回紹介するツールは以
指針 厳密解法に対しては、解ける問題例の規模の指針を与える。数理最適化ソルバーを使う場合には、Gurobi かmypulpを用い、それぞれの限界を調べる。動的最適化の場合には、メモリの限界について調べる。 近似解法に対しては、近似誤差の指針を与える。 複数の定式化を示し、どの定式化が実務的に良いかの指針を示す。 出来るだけベンチマーク問題例を用いる。OR-Libraryなどから問題例をダウンロードし、ディレクトリごとに保管しておく。 解説ビデオもYoutubeで公開する. 主要な問題に対してはアプリを作ってデモをする. 以下,デモビデオ: 注意 基本的には,コードも公開するが, github自体はプライベート そのうち本にするかもしれない(予約はしているが, 保証はない). プロジェクトに参加したい人は,以下の技量が必要(github, nbdev, poetry, gurobi); ペー
結構前にPandasやDaskなどよりも大分高速と話題になっていたPythonのVaexライブラリについて、仕事で利用していきそうな気配がしているので事前にしっかり把握しておくため、色々調べてみました。 どんなライブラリなのか Pandasと同じように行列のデータフレームなどを扱うことのできるPythonライブラリです。 Pandasと比較して膨大なデータの読み込みや計算などを高速に行えます(数十倍~数百倍といったレベルで)。 計算上のメモリ効率がとても良く、無駄の少ない実装になっています。 Daskのように計算が遅延評価されたりと、通常はメモリに乗りきらないデータでも扱うことができます。 Daskのように並列処理で計算を行ってくれます。 Pandasと比較的似たインターフェイスで扱うことができます。 この記事で触れること 主に以下のVaexのトピックに関して本記事で触れます。 インストー
はじめに システム作ってるとかライブラリ作ってるみたいなある程度Pythonを綺麗に1書くことが求められる方々に向けた記事です。 (機械学習系のライブラリを使うためにPython書いてる方とか、初学者の方にはちょっとあわないかも知れません) 綺麗に書くための作法の難しさって共有が面倒なところだと思うんですよね。その書き方は間違いじゃない、間違いじゃないけどもっといい書き方があるぞみたいなやつってなかなか指摘し辛いですし、じゃあ1人に対してレビューしたら他のメンバーにはどう伝える?そもそも伝える必要?俺の工数は?みたいになりがちです。 一番いいのはこういう時はこう書く!みたいなドキュメントを作って「ドキュメント違反です」ってレビューをしてあげることなんですが、まーそれもそれで超面倒じゃないですか。なのでこの記事がそのドキュメントの代わり、とまではいかなくとも礎くらいになればいいなと思って書き
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く