Tag

#Python の記事

このテーマに関連するPython学習記事をまとめています。

Tagged Posts

#Python の記事一覧

115件

pytest 9.2がリリース。parametrizeの書き間違いがわかりやすいエラーに、差分の読み方の説明も付いたニュースを初心者向けに解説

2026年10月27日、Pythonのテストの定番ツールpytestの9.2.0が公開されました。parametrizeの引数の書き間違いが意味のわかるエラーになり、失敗したときの差分には+と-の意味の説明が付きました。入れ子のデータをpytest.approxに渡したときの扱いも変わっています。9.1.1と9.2.0で同じテストを動かした結果とともに整理します。

Pythonのhttp.serverとは?python -m http.serverで一瞬でWebサーバーを立てる方法と、.envまで丸見えになる落とし穴を初心者向けに解説

HTMLファイルをブラウザで確かめたいのに、ダブルクリックで開くと画像やJavaScriptがうまく動かない。そんなときはPython標準のhttp.serverが便利です。python -m http.serverのひと言で手元にWebサーバーが立ちます。ポートや公開フォルダの指定、Pythonコードから起動する方法を表とサンプルで整理し、.envや.gitまで配信されてしまう落とし穴や、本番で使ってはいけない理由も初心者向けに解説します。

Material for MkDocsが2027年5月にサポート終了へ。後継のZensicalと、Python 3.13以上が必要になったSphinx 9.2を初心者向けに解説

2026年10月24日、ドキュメントづくりで人気のMaterial for MkDocsの9.8.0が公開され、2027年5月5日にサポートを終えることが明示されました。後継として同じチームが作るZensicalが案内されています。10月20日にはSphinx 9.2.0も公開され、Python 3.13以上が必要になりました。実際に動かした結果とともに整理します。

Pythonで全角と半角をそろえるには?unicodedata.normalize(NFKC)の使い方と、①や㈱まで変わってしまう落とし穴を初心者向けに解説

フォームやExcelから集めたデータに、全角の英数字や半角カタカナが混ざっていて困ったことはありませんか?Pythonの標準ライブラリunicodedataのnormalize()を使えば、ABC123をABC123に、パソコンをパソコンにまとめて変換できます。NFC・NFD・NFKC・NFKDの違いを表で整理し、名寄せに使える関数のサンプルコードと、①や㈱まで変わってしまう落とし穴、波ダッシュのように変換されない文字への対処も初心者向けに解説します。

Polars 2.1がリリース。文字列と数値の足し算がエラーに変わり、SQLもぐっと便利になったニュースを初心者向けに解説

2026年10月25日、データ分析ライブラリPolarsの2.1.0が公開されました。2.0で黙って文字列としてつなげていた、文字列の列と数値の列の足し算がエラーになり、0に向かって切り捨てる割り算truncdivや、SQLの再帰的なWITH句なども加わっています。2.0.0と2.1.0で同じコードを動かした結果とともに整理します。

Pythonの三項演算子(条件式)とは?x if 条件 else yの書き方と、入れ子やorとの混同で読みにくくなる落とし穴を初心者向けに解説

Pythonには、if文を1行にまとめられる条件式(三項演算子)があります。x if 条件 else yという書き方の基本から、他の言語の?:との違い、リスト内包表記での使い方、片方しか評価されない仕組みまでをサンプルコードで整理します。入れ子にしすぎて読めなくなる失敗や、orやandで代用したときに0や空文字で起きるバグ、優先順位の落とし穴も初心者向けに解説します。

Starlette 1.9と1.10がリリース。FastAPIのテストで少しずつ届く応答を確かめられるようになったニュースを初心者向けに解説

FastAPIの土台であるStarletteの1.9.0が2026年10月18日に、1.10.0が10月24日に公開されました。テスト用のTestClientで、少しずつ届く応答を届いた順に読めるようになったほか、URLの組み立てやクエリパラメータの比べ方も変わっています。1.8.0と1.10.0で同じコードを動かした結果とともに、上げる前に確かめたい点を整理します。

Pythonでメールを送るには?smtplibとEmailMessageの基本と、パスワードをコードに直書きしてはいけない理由を初心者向けに解説

毎朝のレポートや処理の完了通知を、Pythonから自動でメールしたい。そんなときに使うのが標準ライブラリのsmtplibとemailです。メールが届くまでの仕組み、EmailMessageで本文と件名を組み立てる方法、465番と587番のポートの違い、添付ファイルの付け方、Bccの扱い、パスワードを安全に渡す方法まで、手元で動かせるコードとともに初心者向けに解説します。

Tornado 6.6がリリース。設定1行でなりすましの送信を防ぐcross_origin_protectionと、危ないリダイレクトの修正を初心者向けに解説

2026年10月21日、PythonのWebフレームワークTornadoの6.6.0が公開されました。別のサイトから勝手に送られてくるリクエストを、設定1行で防げるcross_origin_protectionが加わり、利用者を外部のサイトへ飛ばせてしまうリダイレクトの問題も直っています。6.5.10と6.6で同じアプリを動かした結果とともに、上げる前に確かめたい点を整理します。

Pythonの割り算とは?/・//・%・divmod()の違いと、マイナスの数で-7 // 2が-4になる落とし穴を初心者向けに解説

Pythonの割り算には、/と//と%という3つの演算子があります。小数で答えが返る割り算、切り捨ての割り算、余りを求める計算の違いを、手元で動かした結果とともに整理します。divmod()で商と余りをまとめて受け取る方法や、偶数判定・時間の変換といった実用例、マイナスの数で-7 // 2が-4になる理由と他の言語との違いまで、初心者向けに解説します。

coverage.py 7.17がリリース。テストが通った範囲の測り間違いが直り、Python 3.10のサポートも終了したニュースを初心者向けに解説

2026年10月22日、テストがコードのどこまでを通ったかを測るツールcoverage.pyの7.17.0が公開されました。コメントに書いた言葉のせいで、通っていない分岐を通ったと数えてしまう問題などが直り、Python 3.10のサポートも終了しています。カバレッジとは何かという基本から、7.16.2と7.17.0で同じコードを測った結果まで整理します。

Pythonのtry・except・else・finallyとは?例外処理の基本の流れと、finallyの中のreturnがエラーを消してしまう落とし穴を初心者向けに解説

エラーが出てもプログラムを止めずに処理を続けたい。そんなときに使うのがPythonのtry文です。try・except・else・finallyの4つのブロックがどの順番で動くのかを、手元で動かした結果とともに整理します。elseを使う理由、複数の例外のまとめ方、except asの変数がブロックの外で消える仕組み、finallyの中のreturnがエラーを握りつぶす落とし穴まで、初心者向けに解説します。

DuckDB 2.0がリリース。SQLのトリガーに対応し、Pythonからの使い方も大きく変わったニュースを初心者向けに解説

2026年10月21日、手元のPythonの中で動く分析用データベースDuckDBの2.0.0が公開されました。表に行が追加されたときに自動で処理を動かすトリガーに対応し、Python向けのパッケージもPython 3.11以上が必要になるなど大きく変わっています。1.5.6と2.0.0で同じコードを動かした結果とともに、上げる前に確かめたい点を整理します。

Pythonのglobとは?ワイルドカードでファイルをまとめて探す方法と、**が効かない・隠しファイルが出ない落とし穴を初心者向けに解説

フォルダの中からCSVだけを集めたい、サブフォルダまでまとめて探したい。そんなときに役立つのがPython標準ライブラリのglobです。*・?・[]の3つのワイルドカードの意味から、recursive=Trueがないと**が効かない理由、隠しファイルが結果に出ない仕組み、結果の順番が保証されない注意点、pathlibとの使い分けまで、手元で動かした結果とともに初心者向けに解説します。

FastAPIの変更は0.156まで続く。JSONのnullと省略を区別するようになったニュースを初心者向けに解説

先日お伝えしたFastAPIの連続リリースは、その後も続き、2026年10月21日には0.156.4に達しました。0.151.0では、JSONで送られたnullと、項目を省略した場合をはっきり区別するように変わっています。新旧の版で同じAPIを呼んだ結果とともに、nullと省略の違い、上げる前に確かめたい点を整理します。

Pythonのリストの追加と削除とは?append・extend・insert・remove・pop・delの違いと、ループ中に消すと要素が残る落とし穴を初心者向けに解説

リストに要素を足したり消したりする方法は、Pythonにいくつも用意されています。appendとextendは何が違うのか、removeとpopとdelはどう使い分けるのか。返り値がNoneになるメソッドの落とし穴や、forループの中で要素を消すと一部が残ってしまう現象、先頭の追加と削除が遅くなる理由まで、手元で動かした結果とともに初心者向けに解説します。

FastAPIが3日で0.150へ。チェックボックスや空欄などHTMLフォームの扱いが変わったニュースを初心者向けに解説

PythonのWebフレームワークFastAPIが、2026年10月18日から20日にかけて0.144から0.150まで立て続けに公開されました。チェックしなかったチェックボックスがFalseになる、空欄のまま送られた入力を値なしとして扱うなど、HTMLフォームの扱いが大きく変わっています。新旧の版で同じコードを動かした結果とともに、上げる前に確かめたい点を整理します。

Pythonのmax()・min()・sum()とは?key引数で最大値の基準を変える方法と、空リストでエラーになる落とし穴を初心者向けに解説

リストの中でいちばん大きい値や合計を求めるとき、forループで変数を更新していませんか。Pythonの組み込み関数max()・min()・sum()を使えば、こうした集計を1行で書けます。基本の使い方から、key引数で比べる基準を変える方法、空のリストでValueErrorになる落とし穴とdefault引数での対策、小数の合計で起きる誤差まで、手元で動かした結果とともに初心者向けに解説します。

setuptools 84.1がアーカイブ展開の弱点を修正。ファイルが外に書き出されるパストラバーサルを初心者向けに解説

2026年10月19日、Pythonのパッケージづくりを支えるsetuptoolsの84.1.0と84.2.0が公開されました。84.1.0では、ZIPやtarの展開で指定したフォルダの外にファイルが書き出されるおそれのある問題が直されています。パストラバーサルとは何か、自分のコードでZIPを安全に展開するにはどうすればよいかを、実際に動かしたコードとともに整理します。

Pythonの型変換とは?int()・float()・str()・bool()の使い方と、int("3.5")がエラーになる落とし穴を初心者向けに解説

input()で受け取った数字を計算しようとしたらエラーになった。そんな経験はありませんか。Pythonでは文字列と数値を自動では変換してくれないため、int()やfloat()、str()を使った型変換が欠かせません。4つの変換関数の基本から、int("3.5")がValueErrorになる理由、int()が四捨五入ではなく切り捨てになる点、bool("False")がTrueになる罠、4300桁の上限まで、手元のPython 3.11で動かした結果とともに初心者向けに解説します。

Python 3.16の最初のアルファ版が公開。selfの書き忘れを教えてくれるエラーなど、早くも見えてきた新機能を初心者向けに解説

Python 3.15の正式版からわずか4日後の2026年10月13日、次のPython 3.16の最初のアルファ版3.16.0a1が公開されました。正式版は2027年10月5日の予定です。selfを書き忘れたときに教えてくれるエラーメッセージや、iter()の新しい引数、math.sinpi()など、早くも入った変更を実際に3.16.0a1で動かしながら紹介します。

Pythonのisinstance()とtype()の違いとは?型チェックの正しい書き方と、boolがintに化ける落とし穴を初心者向けに解説

変数が数値なのか文字列なのかを確かめたいとき、type()とisinstance()のどちらを使えばよいのでしょうか。2つの関数は似ていますが、継承したクラスの扱いで結果が変わります。基本の使い方から、タプルや縦棒で複数の型をまとめて判定する書き方、TrueがintとしてOKになってしまう落とし穴、型チェックに頼りすぎない考え方まで、手元のPython 3.11で動かした結果とともに初心者向けに解説します。

Pillow 13.0がリリース。重大な脆弱性を含む多数のセキュリティ修正と、読み込みの高速化を初心者向けに解説

Pythonの画像処理ライブラリPillowの13.0.0が公開されました。深刻度が最も高いCriticalを含む多数のセキュリティ修正が入り、Python 3.10のサポートを終えて3.15に正式対応しています。importにかかる時間の短縮や、パレット画像の色反転への対応など、実際に12.3.0と13.0.0を並べて動かした結果とともに整理します。

Pythonのmap()とfilter()とは?リスト内包表記との使い分けと、一度しか使えない落とし穴を初心者向けに解説

リストの全要素に同じ処理をしたい、条件に合うものだけ取り出したい。そんなときに使えるのが組み込み関数のmap()とfilter()です。基本の書き方からlambdaとの組み合わせ、リスト内包表記との使い分け、結果が一度しか使えないイテレータの落とし穴、Python 3.14で追加されたstrict引数まで、手元で動かした結果とともに初心者向けに解説します。

Starlette 1.8も3.10を卒業。Python 3.10のサポート終了から2週間、主要ライブラリの対応状況を初心者向けに解説

2026年10月13日、FastAPIの土台でもあるStarlette 1.8.0が公開され、Python 3.10のサポートを終えました。翌14日のStreamlit 1.66も同じく3.11以上が必須です。3.10のサポートが10月1日に終わってから2週間、主要なライブラリの最新版がどのPythonに対応しているのかをPyPIの記録で調べ、自分の環境を確かめるコードとあわせて整理します。

Pythonのprint()を使いこなす。sep・end・file・flushの4つの引数を初心者向けに解説

Pythonを学びはじめて最初に使うprint()ですが、実はsep・end・file・flushという4つのキーワード引数を持っています。区切り文字を変える、改行をなくす、エラー出力やファイルへ書き出す、表示をすぐに画面へ反映させる。そんな使い方を、手元で動かした結果とともに初心者向けに解説します。リストの中身を一度に表示するコツや、よくあるエラーの直し方も紹介します。

Streamlit 1.66がリリース。Python 3.15に対応し、3.10のサポートを終了、ブラウザなしのテストも強化されたニュースを初心者向けに解説

PythonだけでWebアプリが作れるStreamlitの1.66.0が、2026年10月14日に公開されました。Python 3.15に対応する一方で3.10のサポートを終え、すべての入力部品でon_change="ignore"が使えるようになり、ブラウザを開かずにアプリを試せるAppTestも強化されています。フォームのテストを実際に動かした結果とともに、変更点を整理します。

Pythonのany()とall()とは?フラグ変数のループを1行にまとめる使い方と、空リストで迷わないコツを初心者向けに解説

リストの中にひとつでも条件に合うものがあるか、全部が条件を満たしているか。そんな判定をforループとフラグ変数で書いていませんか。Pythonの組み込み関数any()とall()を使えば、こうした確認を1行で読みやすく書けます。基本の使い方からジェネレータ式との組み合わせ、途中で判定を打ち切る仕組み、空リストのときに結果が変わる落とし穴まで、手元で動かした結果とともに初心者向けに解説します。

mypy 2.4がリリース。Python 3.15に対応し、高速な新パーサーと並列チェックが標準に近づいたニュースを初心者向けに解説

Pythonの型チェッカーmypyの2.4.0が、2026年10月1日に公開されました。Python 3.15のsentinelやlazy importに対応し、Ruffのパーサーをもとにした高速な新パーサーが標準になり、複数のCPUで並列にチェックする機能も実験段階を卒業しました。sentinelの型チェックを実際に動かした結果とともに、学習者にとって何が変わるのかを整理します。

Pythonのosモジュールとは?フォルダ作成・ファイル一覧・パス操作の基本を初心者向けに解説

Pythonでフォルダを作ったり、ファイルの一覧を取ったりしたいとき、最初に出会うのがosモジュールです。getcwdでの現在地の確認、os.path.joinでのパスの組み立て、makedirsのexist_ok、listdirとwalkとscandirの違い、ファイルの削除や名前の変更まで、手元で動かした結果とともに初心者向けに解説します。pathlibとの使い分けも紹介します。

pandas 3.1の候補版が公開。inplace=Trueが非推奨に、selectやread_csvの高速化も入ったニュースを初心者向けに解説

データ分析ライブラリpandasの3.1.0の候補版rc0が、2026年9月30日に公開されました。入門記事でよく見かけるinplace=Trueの多くが非推奨になり、列を選ぶselectや条件で絞り込むfilterの新しい使い方、read_csvの高速化も入っています。候補版を実際に動かした結果とともに、今のうちに直しておきたい書き方を整理します。

Pythonのunittestとは?標準ライブラリだけでテストを書く基本を初心者向けに解説

書いた関数が正しく動くか、毎回printで確かめていませんか。Python標準ライブラリのunittestを使えば、インストールなしで自動テストを書き始められます。TestCaseクラスの作り方、assertEqualやassertRaisesの使い分け、setUpでの準備、subTestやテストの見つけ方まで、手元で動かした結果とともに初心者向けに解説します。

FastAPIにOpenTelemetryが標準搭載。0.143では自動設定がオプトインに変わったニュースを初心者向けに解説

PythonのWebフレームワークFastAPIが、2026年9月29日の0.142.0でOpenTelemetryへの対応を標準で組み込みました。10月8日の0.143.0では、環境変数から送り先を自動設定する機能がオプトインに変わっています。テレメトリとは何か、何が記録されるのかを、実際に動かして取れた記録とともに初心者向けに整理します。

Pythonのconfigparserとは?INIファイルで設定を読み書きする方法を初心者向けに解説

データベースの接続先やログの保存場所を、コードに直接書き込んでいませんか。Python標準ライブラリのconfigparserを使えば、INI形式の設定ファイルをインストールなしで読み書きできます。セクションとキーの考え方、getintやgetbooleanでの型変換、fallbackでの既定値、DEFAULTセクションや%記号の落とし穴まで、手元で動かした結果とともに初心者向けに解説します。

uv 0.13とRuff 0.17がリリース。Python 3.15が標準になり、既定のルールも変わったニュースを初心者向けに解説

2026年10月9日、Astralのパッケージ管理ツールuv 0.13.0とリンター兼フォーマッターRuff 0.17.0が同時に公開されました。uvは何も指定しないとPython 3.15を入れるようになり、Ruffは既定で有効なルールやPythonのバージョンの扱いが変わりました。実際に新旧のRuffで同じコードを調べた結果とともに、上げる前に確かめたい点を整理します。

記事を読む

Pythonの独自例外(カスタム例外)とは?Exceptionを継承した作り方とraise fromの使い方を初心者向けに解説

ValueErrorやRuntimeErrorばかりをraiseしていて、呼び出し側でどのエラーかを見分けられずに困ったことはありませんか。Pythonでは、Exceptionを継承したクラスを書くだけで自分専用の例外を作れます。独自例外の基本の書き方、親クラスでまとめる設計、エラーに情報を持たせる方法、raise fromによる例外の連鎖、Python 3.11で入ったadd_noteまで、実際に動かした結果とともに解説します。

Python 3.15が正式リリース。lazy importやfrozendictを実際に動かして、今すぐ上げるべきかを初心者向けに解説

2026年10月9日、Python 3.15の正式版が公開されました。lazy import、書き換えられない辞書frozendict、内包表記でのアンパック、UTF-8の標準化などが入っています。公開されたばかりの3.15.0で実際に動かした結果と、主要なライブラリの対応状況を確かめながら、今すぐ上げるべきかを整理します。

Pythonのurllib.parseとは?URLの分解・組み立てと日本語のエンコードを初心者向けに解説

検索キーワードに日本語を入れたURLを作ったら、%E3%83%91のような謎の文字列に変わって戸惑ったことはありませんか。Python標準ライブラリのurllib.parseを使うと、URLを部品に分解したり、クエリ文字列を安全に組み立てたり、相対パスを絶対URLに直したりできます。urlparse・parse_qs・urlencode・quote・urljoinの使い方と、実務でつまずきやすい落とし穴を、手元で動かした結果とともに解説します。

Pydantic 2.14がリリース。Python 3.15に対応し、未入力を表すMISSINGが正式機能になったニュースを初心者向けに解説

データの検証ライブラリPydanticの2.14.0が、2026年10月8日に公開されました。Python 3.9のサポートを終え、3.15のfrozendictやlazy importに対応したほか、値が送られてこなかったことを表すMISSINGが正式な機能になりました。NoneとMISSINGの違いを実際に動かした結果とともに、上げる前に確かめたい点を整理します。

Pythonのsysモジュールとは?argv・path・exitなどよく使う機能を初心者向けに解説

import sysはよく見かけるのに、何ができるモジュールなのかはっきりしない。そんな方に向けて、Python標準ライブラリのsysモジュールでよく使う機能を整理しました。コマンドライン引数のsys.argv、モジュールの探し場所を決めるsys.path、終了コードを返すsys.exit、エラー出力のsys.stderrまで、手元で動かした結果とサンプルコードで解説します。

Djangoが4件の脆弱性を修正。6.1.2・6.0.9・5.2.18のセキュリティリリースを初心者向けに解説

2026年10月6日、PythonのWebフレームワークDjangoが6.1.2、6.0.9、5.2.18のセキュリティリリースを公開し、4件の脆弱性を修正しました。サービス停止につながる問題や、フォームセットで権限を越えた操作ができてしまう問題などです。Djangoの深刻度の考え方、自分の版の確かめ方、更新の進め方を、表とサンプルコードで整理します。

Pythonのtimeitとは?どちらの書き方が速いかを正しく測る方法を初心者向けに解説

リスト内包表記とforループ、どちらが速いのか。気になっても、time.time()で1回測っただけでは毎回結果がぶれてしまいます。Python標準ライブラリのtimeitを使うと、小さなコードの実行時間を何度もくり返して、ぶれの少ない形で測れます。コマンドラインでの使い方、関数からの呼び出し方、結果の読み方、測るときの落とし穴まで、手元で動かした結果とともに解説します。

Polars 2.0がリリース。ストリーミングが標準に、結果が静かに変わる変更もあるニュースを初心者向けに解説

高速なデータ分析ライブラリPolarsの2.0.0が、2026年10月6日に公開されました。Lazy APIの標準エンジンがストリーミングに変わり、explodeの動きや型の扱いなど、エラーを出さずに結果だけが変わる変更も含まれています。1.xと2.0で実際に同じコードを動かした結果を見ながら、上げる前に確かめたい点を整理します。

Pythonのdoctestとは?docstringに書いた使用例をそのままテストにする方法を初心者向けに解説

関数の説明に書いた使用例が、いつのまにか実際の動きとずれていた。そんな経験はありませんか。Python標準ライブラリのdoctestを使うと、docstringに書いた対話モード風の使用例を、そのままテストとして実行できます。基本の書き方、python -m doctestでの実行、失敗したときの読み方、例外やELLIPSISの扱い、pytestとの組み合わせまで、手元で動かした結果とともに解説します。

SQLAlchemy 2.1がリリース。Python 3.11以上が必須に、autoflushの動きも変わったニュースを初心者向けに解説

PythonでデータベースをあつかうライブラリSQLAlchemyの2.1.0が、2026年9月24日に公開されました。Python 3.10のサポート終了、greenletが標準で入らなくなったこと、text()でもautoflushが走るようになった変更、Python 3.14のt-string対応など、2.0から上げる人が知っておきたい点を、実際に2.0と2.1で動かした結果とともに整理します。

Pythonのwarningsとは?DeprecationWarningの正体と、警告を出す・消す・エラーにする方法を初心者向けに解説

プログラムは最後まで動いたのに、画面にDeprecationWarningやUserWarningと表示されて不安になったことはありませんか。警告はエラーとは違い、処理を止めずに注意だけを伝える仕組みで、Pythonでは標準ライブラリのwarningsで扱います。警告の読み方、自分で警告を出すwarnings.warnとstacklevel、表示されたりされなかったりする理由、-Wオプションでの抑制とエラー化、3.13で入った@deprecatedまで、手元で動かした結果とともに解説します。

Pythonのパッケージ管理に、初めて選挙で選ばれた評議会が誕生。Python Packaging Councilを初心者向けに解説

pipやPyPI、pyproject.tomlといったPythonのパッケージ管理の決まりごとを見守る、Python Packaging Councilの最初のメンバー5人が、2026年9月にPSFの選挙で選ばれました。これまで誰がどう決めていたのか、評議会ができると何が変わるのか、学習者や実務で使い始めた人に関係するところを、表とサンプルコードで整理します。

PythonのBase64とは?バイナリを文字に変える仕組みと、暗号ではない理由を初心者向けに解説

APIのドキュメントでBase64でエンコードしてくださいと書かれて、戸惑ったことはありませんか。Base64は画像などのバイナリを英数字だけの文字列に変える仕組みで、Pythonでは標準ライブラリのbase64で扱えます。b64encodeとb64decodeの基本、サイズが約4/3倍になる理由、URLで使える変種、Incorrect paddingエラーの対処、そして暗号として使ってはいけない理由まで、手元で動かした結果とともに解説します。

MCPのPython SDKに認証情報が盗まれる脆弱性。1.30.0と2.2.0で修正されたニュースを初心者向けに解説

AIと外部ツールをつなぐMCPの公式Python SDKで、OAuthの認証情報が悪意あるサーバーに送られてしまう脆弱性が2026年9月28日に公表されました。深刻度は高で、1.30.0と2.2.0で修正済みです。MCPとは何か、何が問題だったのか、自分の環境が影響を受けるかの確かめ方と対処法を、表とサンプルコードで整理します。

Pythonのpprintとは?ネストした辞書やリストを見やすく整形して表示する方法を初心者向けに解説

APIから受け取った辞書をprintしたら、1行に詰め込まれて読めなかった経験はありませんか。標準ライブラリのpprintを使えば、ネストした辞書やリストを改行とインデントで見やすく表示できます。pprintとppの違い、width・depth・compactなどの調整方法、pformatでログに残すコツ、json.dumpsとの使い分けまで、実際の出力を見ながら初心者向けに解説します。

Djangoが年1回リリースへ。2028年から版番号は2028.0に、新しい運営ルールも承認されたニュースを初心者向けに解説

PythonのWebフレームワークDjangoが、2028年1月から年1回のリリースに切り替わります。版番号は2028.0のように年を表す形になり、どの版も3年間サポートされます。9月22日には運営ルールを定めたDEP 19も承認されました。何が変わり、これからDjangoを学ぶ人や使っている人は何を気にすればいいのかを、表とサンプルコードで整理します。

Pythonのcalendarとは?月末日・うるう年・第2火曜日を自分で数えずに求める方法を初心者向けに解説

月末の日付やうるう年、毎月第2火曜日のような日付を、自分で数えて求めていませんか。標準ライブラリのcalendarを使えば、monthrangeで月の日数を、isleapでうるう年を、monthcalendarで第何週の何曜日かを一発で求められます。週の始まりを日曜にする方法や、月末の営業日を求めるコード、datetimeとの使い分けまで、手元で動かした結果を見ながら初心者向けに解説します。

Python 3.15の正式版は10月9日に延期、3.10はサポート終了へ。10月初めのPythonニュースを初心者向けに解説

2026年10月2日、Python 3.15の候補版rc3が公開され、正式版の予定日が10月1日から10月9日に変わりました。同じタイミングで3.10から3.14までの更新版がそろって出て、3.10はサポート終了、3.13は通常のバグ修正の最終版を迎えています。何が起きたのか、学習者や実務で使い始めた人は何をすればいいのかを、表とサンプルコードで整理します。

Pythonのzipfileとは?ZIPの作成・中身の確認・安全な展開までを初心者向けに解説

毎月のレポートをZIPにまとめる作業、手でやっていませんか。標準ライブラリのzipfileを使えば、ZIPの作成も中身の確認も展開もPythonから自動化できます。ZIP_DEFLATEDを付け忘れると圧縮されない理由、展開せずにCSVを読む方法、Windowsで作られたZIPの文字化け対策、信頼できないZIPを安全に展開する書き方まで、実際に動かした結果を見ながら初心者向けに解説します。

Pythonのdifflibとは?2つの文章の違いを見つけてタイプミスの候補まで出す方法を初心者向けに解説

2つのファイルのどこが変わったのか、目で見比べて探していませんか。標準ライブラリのdifflibを使えば、Gitでおなじみの差分表示をPythonから作れます。unified_diffとndiffの使い分け、SequenceMatcherで似ている度合いを数値にする方法、get_close_matchesでタイプミスに候補を出す書き方、HTMLでの見比べ方まで、実際に動かした出力を見ながら初心者向けに解説します。

Pythonのcontextlibとは?with文で使える後片付けの仕組みを自作する方法を初心者向けに解説

ファイルを開くときに書くwith文は、実は自分でも作れます。Pythonの標準ライブラリcontextlibを使えば、準備と後片付けをひとまとめにした仕組みを、数行の関数で用意できます。@contextmanagerの基本から、suppress、ExitStack、Python 3.11で加わったchdirまで、動くコードと一緒に初心者向けに解説します。

Pythonのtempfileとは?一時ファイルと一時フォルダを安全に作って自動で片付ける方法を初心者向けに解説

処理の途中で使うだけのファイルを、作業フォルダにtmp.txtのような名前で作っていませんか。Pythonの標準ライブラリtempfileを使えば、名前がぶつからない一時ファイルや一時フォルダを作り、使い終わったら自動で片付けられます。TemporaryFile、NamedTemporaryFile、TemporaryDirectoryの使い分けから、Python 3.12で加わったdelete_on_close、mkstempの注意点まで、動くコードと一緒に初心者向けに解説します。

Pythonのbisectとは?並べ替え済みリストを速く探して順番どおりに挿入する方法を初心者向けに解説

並べ替え済みのリストに値を追加するたびにsortし直していませんか。Pythonの標準ライブラリbisectを使えば、二分探索で挿入位置をすばやく見つけ、順番を保ったまま値を入れられます。bisect_leftとbisect_rightの違い、点数から評価を決める使い方、Python 3.10で加わったkey引数、insortの注意点まで、動くコードと一緒に初心者向けに解説します。

Pythonのtomllibとは?設定ファイルをTOMLで読み込む方法を初心者向けに解説

設定値をコードに直接書き込んでいませんか。Python 3.11から標準ライブラリに入ったtomllibを使えば、TOML形式の設定ファイルをインストールなしで辞書として読み込めます。rbで開く理由、日付や配列の扱い、読み込み専用である理由、エラー処理、JSONやINIとの違いまで、動くコードと一緒に初心者向けに解説します。

Pythonのstatisticsとは?平均値にだまされないための基本の統計を初心者向けに解説

平均を出すためにsum÷lenを毎回書いていませんか。標準ライブラリのstatisticsを使えば、平均・中央値・最頻値・標準偏差をインストールなしで計算できます。外れ値に強い中央値の考え方、stdevとpstdevの違い、四分位数を求めるquantiles、NumPyとの使い分けまで、動くコードと一緒に初心者向けに解説します。

Pythonのheapqとは?毎回sortせずに最小値をすばやく取り出す仕組みを初心者向けに解説

一番小さい値や優先度の高い仕事を何度も取り出すとき、毎回sortしていませんか。標準ライブラリのheapqを使うと、リストをヒープという形に整えて、最小値を効率よく出し入れできます。heappushとheappopの基本、上位N件を取るnlargest、優先度付きキューの作り方、Python 3.14で加わった最大ヒープ用の関数まで初心者向けに解説します。

Pythonのsecretsとは?パスワードやトークンをrandomで作ってはいけない理由を初心者向けに解説

パスワードのリセットURLやAPIキーを、randomで作っていませんか。randomの乱数は計算で先読みできるため、秘密の値には向いていません。標準ライブラリのsecretsを使えば、OSの乱数で予測できないトークンが1行で作れます。token_hexやtoken_urlsafeの使い分け、パスワードの作り方、比較で使うcompare_digestまで初心者向けに解説します。

Pythonのクロージャとは?関数が外の変数を覚えたまま持ち歩く仕組みを初心者向けに解説

関数の中で関数を作って返す書き方を見て、何の役に立つのかわからなかった方は多いと思います。クロージャは、外側の変数を覚えたまま持ち歩く関数のことです。税込み計算やカウンターを例に、nonlocalの役割、globalとの違い、関数がどこに記憶を置いているのか、ループの中で作ると全部同じ値になる落とし穴、クラスとの使い分けまで、実際に動かせるコードで順番に整理していきます。

PythonのcProfileとは?遅い原因を推測せずに計測で見つける方法を初心者向けに解説

書いたスクリプトが遅いとき、あやしそうな場所を勘で直していませんか。標準ライブラリのcProfileを使えば、どの関数に何秒使ったかが一覧で出ます。コマンド1行で始める使い方から、ncallsやtottimeとcumtimeの読み分け、範囲を絞った計測、SnakeVizでの可視化、Python 3.15で入るprofilingパッケージまで、実際に動かした出力を見ながら初心者向けに解説します。

Pythonの循環インポートとは?cannot import nameエラーの原因と直し方を初心者向けに解説

ファイルを分けて整理したとたん、cannot import name ... most likely due to a circular import というエラーが出て動かなくなった。そんな循環インポートのしくみを、IT初心者向けにやさしく解説します。なぜ片方のモジュールが未完成のまま読まれるのか、traceback のどこを見れば原因がわかるのか、共通部分の切り出し・import文の書き換え・関数の中でのimport・TYPE_CHECKINGという4つの直し方まで、実際に動かした結果を見ながら整理します。

Pythonのtqdmとは?長い処理の進捗をバーで見える化する使い方を初心者向けに解説

実行したスクリプトが無反応のまま数分、動いているのか固まっているのかわからない。そんな不安を消してくれるのがtqdmです。ループを包むだけで進捗バーが出る基本から、バーに並ぶ数字の読み方、総数がわからないときのtotal指定、printでバーが崩れる理由とtqdm.write、pandasのapplyへの適用、そして自動実行のログを汚さないための設定まで、手元で動かした出力を見ながら初心者向けに解説します。

Pythonのsuper()とは?親クラスを名前で書いてはいけない理由を初心者向けに解説

Pythonの継承で必ず出てくるsuper()を、IT初心者向けにやさしく解説します。子クラスに__init__を書くと親の初期化が消える理由、super()が実は親クラスではなくMRO(メソッド解決順序)の次を指していること、親の名前を直書きすると途中のクラスが飛ばされること、2引数のsuper()が壊れる場面まで、手元のPython 3.11で動かした結果と表で順番に整理していきます。

Pythonのデフォルト引数の落とし穴とは?空のリストを指定した関数が壊れる理由を初心者向けに解説

Pythonのデフォルト引数でリストや辞書を指定すると、前回の呼び出しの結果が次の呼び出しに残ってしまいます。デフォルト値が関数の定義時に1回だけ作られる仕組み、__defaults__で犯人を確かめる方法、Noneを目印にする定番の直し方、時刻をデフォルトにすると時間が止まる話、dataclassのdefault_factory、ruffのB006で機械的に見つけるところまでを、手元で動かした結果とあわせて整理します。

Pythonのzoneinfoとは?サーバーとの9時間ズレをなくすタイムゾーンの扱いを初心者向けに解説

Pythonのzoneinfoモジュールを、日付の扱いに不安がある方にもわかるようにやさしく解説します。時差を持たない日時が引き起こすズレ、ZoneInfoで地域を指定する書き方、astimezoneでUTCと行き来する方法、utcnow()が非推奨になった理由、サマータイムをまたぐと1日足しても23時間しか進まない落とし穴、そして保存と表示の分け方まで。手元で動かした結果と比較表で整理します。

Pythonのdocstringとは?3か月後の自分を助ける説明の書き方を初心者向けに解説

Pythonのdocstringを、コードに説明を書き慣れていない方にもわかるようにやさしく解説します。コメントとの役割の違い、PEP 257が示す1行と複数行の書き分け、help()が読んでいる正体、GoogleスタイルやNumPyスタイルの選び方、doctestで使用例をそのままテストにする方法、そして実装とずれたときの怖さまで。手元で動かした結果と比較表で整理します。

Pythonのdecimalとは?お金の計算でfloatを使ってはいけない理由を初心者向けに解説

Pythonのdecimalモジュールを、数値の扱いに不安がある方にもわかるようにやさしく解説します。0.1+0.2が0.3にならない理由、Decimalに文字列を渡す決まり、quantizeで桁をそろえる書き方、既定の丸めが四捨五入ではない落とし穴、丸めモードの使い分け、消費税の計算例、そして速度やJSON保存といった苦手な面まで。手元で動かした結果と比較表で整理します。

Pythonの抽象クラス(ABC)とは?実装のし忘れを防ぐ設計の基本を初心者向けに解説

Pythonの抽象クラスを、クラスの書き方を覚えたばかりの方にもわかるようにやさしく解説します。実装のし忘れが後回しになる理由、abcモジュールのABCとabstractmethodの書き方、ABCの継承を忘れたときの落とし穴、共通処理を親に置くやり方、collections.abcという身近な実例、registerで仲間に加える方法、そしてtypingのProtocolとの使い分けまで。手元で動かせるコードと比較表で整理します。

Pythonのuuidとは?重複しないIDを作る仕組みとPython 3.14で加わったuuid7を初心者向けに解説

Pythonのuuidモジュールを、データベースにまだ自信のない方にも伝わるようにやさしく解説します。連番IDが行き詰まる理由、UUIDが128ビットでぶつからない仕組み、uuid4とuuid5の使い分け、そしてPython 3.14で追加されたuuid7が主キー向きと言われる理由まで。動かせるコードと比較表で、どれを選べばいいのかを整理します。

Pythonの@propertyとは?メソッドを属性の顔で使わせる書き方を初心者向けに解説

Pythonの@propertyを、クラスを書きはじめたばかりの方にもわかるようにやさしく解説します。ただの属性のままだと困る理由、ゲッターとセッターを属性の見た目で用意する書き方、読み取り専用にする方法、セッターで無限ループを起こす典型的な失敗、重い計算を1回で済ませるcached_property、そして使わないほうがいい場面まで。手元で動かせるコードと比較表で整理します。

Pythonのthreadingとは?待ち時間の多い処理を同時に進める仕組みを初心者向けに解説

Pythonのthreadingを、並行処理という言葉に身構えてしまう方にもわかるようにやさしく解説します。待ち時間の正体、Threadとjoinの基本、ThreadPoolExecutorで短く書く方法、GILがあっても速くなる理由、複数スレッドが同じ変数を触ったときに起きる事故とLockでの防ぎ方、そしてmultiprocessingやasyncioとの使い分けまで。動かせるコードと比較表で整理します。

Pythonのpickleとは?オブジェクトをそのまま保存する仕組みと、信頼できないデータを開いてはいけない理由を解説

Pythonのpickleを、標準ライブラリにまだ慣れていない方にも伝わるようにやさしく解説します。dumpsとloadsの基本、ファイルへ保存するときにバイナリモードを使う理由、JSONとの違い、pickleにできないこと、そして信頼できないデータを読み込むと任意のコードが動いてしまう危険まで。動かせるコードと比較表で、使ってよい場面と避けるべき場面を整理します。

Pythonのhashlibとは?パスワードをそのまま保存してはいけない理由とハッシュの基本を初心者向けに解説

Pythonのhashlibを、セキュリティにまだ自信のない方にも伝わるようにやさしく解説します。ハッシュとは何か、SHA-256の使い方、文字列をencodeする理由、ファイルの改ざんチェックに便利なfile_digest、そしてパスワード保存にSHA-256を使ってはいけない理由と、代わりに使うpbkdf2_hmacやscryptまで。動かせるコードと比較表で、安全な保存方法の考え方を整理します。

Pythonのモックとは?unittest.mockで外部APIに頼らないテストを書く基本を初心者向けに解説

Pythonのモックを、テストを書き始めたばかりの方にも伝わるようにやさしく解説します。外部APIや現在時刻に依存したテストがなぜ不安定になるのか、標準ライブラリのunittest.mockで身代わりを作る方法、return_valueとside_effectの使い分け、patchでどこを差し替えるべきか、pytestのmonkeypatchとの違い、そして使いすぎたときに何が起きるのかまで。動かせるコードと比較表で、テストの土台を整理します。

PythonのPolarsとは?pandasより速いと言われるデータ処理ライブラリの正体を初心者向けに解説

PythonのPolarsを、pandasを触り始めた方にも伝わるようにやさしく解説します。Rustで書かれているとはどういうことか、複数のCPUコアを使う仕組み、インストールと最新バージョン、最初に動かす一本、pandasとの書き方の違い、indexが無いという最大の戸惑い、遅延実行という考え方、そして今から乗り換えるべきかどうかまで。動かせるコードと比較表を並べて、新しいデータ処理の入口を順番に整理します。

PythonのSQLAlchemyとは?SQLを書かずにデータベースを操作するORMの基本を初心者向けに解説

PythonのSQLAlchemyを、SQLが苦手な方にも伝わるようにやさしく解説します。ORMという考え方、CoreとORMという二階建ての構造、インストールと最新バージョン、テーブルをクラスとして書く最初の一本、Sessionという入れ物の役割、N+1問題という定番のつまずき、FlaskやFastAPIと組み合わせるときの注意まで。動かせるコードと表を並べて、データベース操作の入口を順番に整理します。

Pythonのscikit-learnとは?機械学習のはじめの一歩を予測プログラムづくりで初心者向けに解説

Pythonの機械学習ライブラリscikit-learnを、数式を使わずにやさしく解説します。ふつうのプログラムとの考え方の違い、インストールと最新バージョン、十数行で動く分類の例、fitとpredictという共通の作法、学習用とテスト用を分ける理由、前処理をまとめるPipeline、初学者がつまずきやすい点まで。手を動かせるコードと表を並べて、機械学習の入口を順番に整理します。

PythonのDjangoとは?管理画面まで最初から付いてくるWebフレームワークをFlaskと比べて初心者向けに解説

PythonのWebフレームワークDjangoを、IT初心者にもわかるようにやさしく解説します。インストールから開発用サーバーを立ち上げる手順、MTVという部品の分け方、モデルとマイグレーションでデータベースを扱う流れ、最初から付いてくる管理画面の便利さと注意点、FlaskやFastAPIとの使い分け、LTSの選び方まで。手を動かせるコードと表を並べて、Webアプリづくりの第一歩を順番に整理します。

PythonのSeleniumとは?ブラウザを自動で操作する仕組みと最初の一歩を初心者向けに解説

PythonのライブラリSeleniumを、IT初心者にもわかるようにやさしく解説します。ドライバーの手配が要らなくなったインストール手順、要素の見つけ方、初心者がいちばんつまずく待ち方の使い分け、画面を出さずに動かすヘッドレスモードまで。動くコードと表を並べて、ブラウザ操作を自動化する第一歩を順番に整理します。

PythonのStreamlitとは?数十行のコードでブラウザに画面を出すデータアプリの作り方を初心者向けに解説

PythonのライブラリStreamlitを、IT初心者にもわかるようにやさしく解説します。インストールから最小のアプリを動かす手順、画面を触るたびにスクリプトが上から動き直す独特の仕組み、値を持ち越すsession_state、重い処理を一度だけにするキャッシュ、FlaskやFastAPIとの使い分けまで。手を動かせるコードと表を並べて、Pythonだけで画面を作る第一歩を順番に整理します。

Pythonのmypyとは?型ヒントを本物のチェックに変える使い方を初心者向けに解説

Pythonのmypyを、IT初心者向けにやさしく解説します。型ヒントを書いても実行時には検査されない理由、mypyを入れて1ファイルにかけるまでの手順、エラーメッセージの読み方、Noneのすり抜けを事前に止める使い方、型を書いていない関数が見逃される既定の挙動と--strict、pyproject.tomlでの設定、Ruffやpytestとの役割の違いまで、手元で動かせるコードと表で順番に整理します。

Pythonの再帰関数とは?自分を呼び出す関数の考え方とRecursionErrorの直し方を初心者向けに解説

Pythonの再帰関数を、IT初心者向けにやさしく解説します。自分自身を呼び出すという不思議な仕組みの読み解き方、処理を止めるための終了条件、RecursionErrorが出たときに見るべき場所、ループとの使い分け、フォルダをたどるような入れ子構造での本領発揮、そしてlru_cacheで遅い再帰を一気に速くする方法まで、手元で動かせるコードと表で順番に整理します。

PythonのFastAPIとは?型ヒントだけで動くWeb APIの作り方をFlaskと比べながら初心者向けに解説

PythonのWebフレームワークFastAPIを、IT初心者にもわかるようにやさしく解説します。インストールから最小のAPIを動かす手順、型ヒントがそのまま入力チェックになる仕組み、自動で作られるAPIドキュメント、FlaskとのASGI・WSGIの違い、async defとdefの使い分け、初学者がつまずきやすい落とし穴まで。手を動かせるコードと表を並べて、APIづくりの第一歩を順番に整理します。

Pythonのwhile文とは?条件が真の間くり返す基本と無限ループの止め方を初心者向けに解説

Pythonのwhile文を、IT初心者向けにやさしく解説します。for文との使い分け、リストが空になるまで回す書き方、while Trueと無限ループの正しい付き合い方、止まらなくなったときの止め方、breakとcontinueの違い、while ... elseの独特な動き、セイウチ演算子で条件をすっきりさせる方法、そして実務で出番の多いリトライ処理まで、手元で動かせるコードと表を並べながら順番に整理します。

Pythonのtimeモジュールとは?sleepで待つ・処理時間を測る基本を初心者向けに解説

Pythonのtimeモジュールを、IT初心者向けにやさしく解説します。time.sleep()で処理を待たせる書き方と、指定した秒数ぴったりでは戻らない理由、Webアクセスの間隔調整や失敗時の指数バックオフ、time.time()ではなくperf_counter()で処理時間を測るべき理由、monotonicやprocess_timeとの使い分け、timeitで正しく速さを比べる方法まで、手元で動かせるコードと表を並べながら順番に整理します。

Pythonの文字コードとは?文字化けとUnicodeDecodeErrorの直し方を初心者向けに解説

Pythonでファイルを開いたときの文字化けやUnicodeDecodeErrorを、IT初心者向けにやさしく解説します。文字コードとは何か、strとbytesの違い、encodeとdecodeの使い分け、errors引数の正しい距離感、open()でencodingを省略してはいけない理由、ExcelのためのUTF-8 BOM、そしてPython 3.15でUTF-8が既定になる変更まで、手元で動かせるコードと表を並べながら順番に整理します。

Pythonのshutilとは?ファイルのコピーや移動、zip圧縮を自動化する基本を初心者向けに解説

Pythonの標準ライブラリshutilを、IT初心者向けにやさしく解説します。copyとcopy2で何が変わるのか、copyfileがフォルダを受け取れない理由、copytreeが2回目に失敗するときの対処、moveの意外な振る舞い、rmtreeを使うときの心構え、make_archiveでzipを1行で作る方法まで。手元で試せるコードと表を並べながら、ファイル整理の自動化を順番に整理していきます。

Pythonの文字列メソッドとは?strip・split・replaceでデータを整える基本を初心者向けに解説

Pythonの文字列メソッドを、IT初心者向けにやさしく解説します。余分な空白を落とすstrip、区切って分けるsplit、置きかえるreplaceといった定番の使い方から、stripの引数が文字の集合として扱われる落とし穴、Python 3.9で加わったremoveprefixとremovesuffix、全角数字でisdigitがTrueになる話まで。手元で動かせるコードと表を並べながら、実務で効いてくる整形のコツを順番に整理していきます。

記事を読む

PythonのPillowとは?画像のリサイズや一括加工を自動化する基本を初心者向けに解説

PythonのPillowを、IT初心者向けにやさしく解説します。インストール名とimport名が違う理由、Image.openで中身を確認する方法、resizeとthumbnailの使い分け、JPEGで保存できないときの原因、フォルダごと一括処理する書き方、スマホ写真が横向きになるEXIFの落とし穴まで。手元で動かせるコードと表を並べながら、画像作業を自動化する第一歩を順番に整理していきます。

Pythonのファイル読み書きとは?open()とwith文の基本を初心者向けに解説

Pythonでテキストファイルを読み書きする方法を、IT初心者向けにやさしく解説します。open関数の書き方、モードの選び分け、with文が必要な理由、読み込みの3つのやり方、追記と上書きの違い、encodingを指定して文字化けを防ぐ方法、そしてPython 3.15で変わる既定のエンコーディングまで、動かせるコードを並べながら順番に紹介します。

PythonのFlaskとは?WebアプリをPythonで動かす仕組みを初心者向けに解説

PythonのWebフレームワークFlaskを、IT初心者向けにやさしく解説します。インストールから最小のアプリを動かす手順、ルーティングとデコレータの関係、URLの型指定や末尾スラッシュの落とし穴、テンプレートによる画面づくり、開発用サーバーを本番で使ってはいけない理由、拡張ライブラリの足し方まで。手を動かせるコードと表を並べながら、Webアプリ作りの第一歩を順番に整理していきます。

PythonのBeautifulSoupとは?Webページから情報を取り出すスクレイピングの基本を初心者向けに解説

PythonのBeautifulSoupを、IT初心者向けにやさしく解説します。インストールからHTMLの読み込み、findとfind_allの違い、CSSセレクタを使うselect、requestsとの組み合わせ方、NoneTypeエラーや相対URLといったつまずきポイント、robots.txtと取得マナーまで。手元で動かせるコードと表を並べながら、Webページから欲しいデータを取り出す第一歩を順番に整理していきます。

Pythonのopenpyxlとは?Excelファイルの読み書きを自動化する基本を初心者向けに解説

Pythonのopenpyxlを、IT初心者向けにやさしく解説します。インストールから読み込み、セルの指定の仕方、iter_rowsでの一括読み取り、新しいブックへの書き出し、数式が計算されない理由、pandasとの使い分け、大きなファイルを扱うread_onlyモードまで。手元で動かせるコードと表を並べながら、毎月のExcel作業を自動化する第一歩を順番に整理していきます。

Pythonの辞書(dict)とは?キーと値でデータを管理する基本を初心者向けに解説

Pythonの辞書(dict)を、IT初心者向けにやさしく解説します。キーと値の組で持つ仕組み、角かっことgetの使い分け、items()でのループ、setdefaultによるグループ分け、キーにできる型とできない型、そして並び順が保たれるようになった経緯まで。手元で動かせるコードと表を並べながら、実務でつまずきやすいところを順番に整理していきます。

Pythonのmatplotlibとは?データをグラフにして見せる基本を初心者向けに解説

Pythonの定番グラフ描画ライブラリmatplotlibを、IT初心者向けにやさしく解説します。最初の1枚の描き方、FigureとAxesという2つの土台、pyplot方式とオブジェクト指向方式の使い分け、折れ線や棒グラフの描き分け、日本語が豆腐になる問題の直し方、画像として保存する方法まで。動かせるコードと表で順番に整理していきます。

Pythonのrandomとは?サイコロやシャッフルの書き方と、パスワードに使ってはいけない理由を解説

Pythonで乱数を扱うrandomモジュールを、IT初心者向けにやさしく解説します。randintとrandrangeの終わりの違い、choiceやshuffleやsampleの使い分け、seedで結果を固定して再現性を作る方法まで。さらに、randomの乱数がなぜ本当の偶然ではないのか、パスワードやトークンにはsecretsを使うべき理由も、動かせるコードと表で順番に整理していきます。

PythonのNumPyとは?配列計算がリストより速くなる仕組みを初心者向けに解説

数値計算ライブラリNumPyを、IT初心者向けにやさしく解説します。ndarrayとリストの違い、dtypeで型がそろう意味、forループを書かずに計算するベクトル化、形の違う配列どうしを計算するブロードキャスト、行と列での集計まで。手元で実際に測った速度差や、スライスがコピーではなくビューになる落とし穴も、動かせるコードと表で順番に整理していきます。

記事を読む

Pythonのpdbとは?breakpoint()でprintデバッグを卒業する方法を初心者向けに解説

Pythonの標準デバッガpdbを、IT初心者向けにやさしく解説します。breakpoint()を1行書いて止める方法、n・s・c・p・lといった最低限の操作、エラーが起きたあとから原因の場所へ飛べる事後デバッグ、PYTHONBREAKPOINT=0でまとめて無効にする書き方まで。printを書いては消す往復から抜け出すための考え方を、手元で動かせるコードと表で順番に整理していきます。

環境変数とは?PythonでAPIキーを安全に扱う.envと os.environ の基本を初心者向けに解説

Pythonの環境変数を、IT初心者向けにやさしく解説します。os.environとos.getenvの違い、値が必ず文字列で返ってくる理由、読み込みのタイミング、python-dotenvで.envファイルを読む方法、.gitignoreに書いて鍵をコミットしない運用まで。APIキーをコードから追い出すための考え方と、起動時に設定漏れを検出する書き方を、手元で動かせるコードと表で整理していきます。

Pythonのスライスとは?リストや文字列を[start:stop:step]で切り出す書き方を初心者向けに解説

Pythonのスライスを、IT初心者向けにやさしく解説します。start・stop・stepの意味、末尾がなぜ含まれないのか、マイナスの添字で末尾から数える書き方、[::-1]で逆順にする方法まで。範囲を外れてもエラーにならない性質や、スライスがコピーを作るときの落とし穴もあわせて紹介します。手元で動かせるコードと表を並べながら、実務での使いどころを順番に整理していきます。

Pythonの集合(set)とは?重複の削除と高速な存在チェックを初心者向けに解説

Pythonの集合(set)を、IT初心者向けにやさしく解説します。重複が自動で消える仕組み、リストより存在チェックが速い理由、和集合や差分といった集合どうしの計算、そしてfrozensetの使いどころまで。空の集合を作るときの落とし穴や、順番が保たれないことによる失敗もあわせて紹介します。手元で動かせるコードと表を並べながら、実務での使い分けを順番に整理していきます。

Pythonのsortedとsortの違いとは?key引数で自在に並べ替える方法を初心者向けに解説

Pythonの並べ替えを、IT初心者向けにやさしく解説します。元のリストを書き換えるsortと、新しいリストを返すsortedの違い。key引数で名前順や点数順に並べ替える書き方。安定ソートという性質を使った複数条件の並べ替えや、operator.itemgetterによる短い書き方まで。手元で動かせるコードと表を並べながら、実務での使いどころと落とし穴を順番に紹介します。

Pythonのfunctoolsとは?lru_cacheやpartialで関数を速く短くする使い方を初心者向けに解説

Pythonの標準ライブラリfunctoolsを、IT初心者向けにやさしく解説します。同じ計算を繰り返さずに済ませるlru_cacheとcache、引数を先に埋めておくpartial、自作デコレータで関数の名前を守るwraps、重い計算を一度だけにするcached_property、そして今も残るreduceまで。手元で動かせるコードと表を並べながら、実務での使いどころと注意点を順番に紹介します。

Pythonのsubprocessとは?外部コマンドを安全に実行する方法を初心者向けに解説

Pythonから外部コマンドを実行するための標準ライブラリsubprocessを、IT初心者向けにやさしく解説します。subprocess.runの基本形、出力を受け取るcapture_outputとtext、初心者が事故を起こしやすいshell=Trueの危険性、check=Trueによる失敗の検知、timeoutの使い方、そしてos.systemとの違いまで、動かせるコードを並べながら順番に紹介します。

Pythonのcsvモジュールとは?表データの読み書きと文字化けの防ぎ方を初心者向けに解説

Pythonで表データを扱うときに使う標準ライブラリのcsvモジュールを、IT初心者向けにやさしく解説します。readerとDictReaderの読み分け、書き出しの手順、初心者がほぼ必ずぶつかるnewlineの空行問題とExcelでの文字化け、タブ区切りへの対応、そしてpandasとの使い分けまで、動かせるコードを並べながら順番に紹介します。

記事を読む

Pythonのrequestsとは?WebからデータをとってくるHTTP通信の基本を初心者向けに解説

PythonでWebからデータを取得するときに使うrequestsライブラリを、IT初心者向けにやさしく解説します。インストールの方法、GETリクエストの書き方、レスポンスの読み方、文字化けの直し方、raise_for_statusによるエラー処理、そして書き忘れると危ないtimeoutまで、実際に動かせるコードを並べながら順番に紹介します。

記事を読む

Pythonのcollectionsとは?Counterやdefaultdictで毎日のコードが短くなる使い方を解説

Python標準ライブラリのcollectionsについて、出番の多いCounter・defaultdict・deque・namedtupleの4つをIT初心者向けにやさしく解説します。素のdictやlistで書いた場合との違い、実際に動かした実行結果、10万件で測った速度差、使い分けの目安まで順番に紹介します。

Pythonのasyncioとは?async/awaitで待ち時間を減らす仕組みを初心者向けに解説

Python標準のasyncioについて、async/awaitが何をしているのか、なぜ待ち時間が減るのかをIT初心者向けにやさしく解説します。asyncio.runやgatherの使い方、Python 3.11で入ったTaskGroup、向いている処理と向いていない処理の見分け方まで、実際に動かしたコードと実行結果を見ながら紹介します。

Pythonのdataclassとは?クラスの定義がぐっと短くなる書き方を初心者向けに解説

Python標準のdataclassについて、何が自動で作られるのか、どんな場面で使うと効くのかをIT初心者向けにやさしく解説します。default_factoryやfrozenといったよく使うオプション、__post_init__などの実務で効く小技、dictやPydanticとの使い分けまで、動くコードを見ながら紹介します。

記事を読む

uvとは?Rust製の高速Pythonパッケージ管理ツールをpipやPoetryと比べて解説

Rustで書かれたPythonのパッケージ管理ツールuvについて、なぜ速いのか、pipやPoetryと何が違うのかをIT初心者向けにやさしく解説します。インストール方法や基本コマンド、1ファイルのスクリプトを配布する使い方、学習中の人が乗り換えるべきかの判断材料まで紹介します。

Python 3.15の新機能を先取り解説!lazy importやfrozendictで何が変わるのか

2026年10月にリリース予定のPython 3.15について、lazy import、frozendict、UTF-8のデフォルト化などの新機能をIT初心者向けにやさしく解説します。今から試す方法や、学習中の人がどこまで気にすればいいのかもあわせて紹介します。