Pythonは高水準な汎用プログラミング言語です。 Pythonの設計思想は、コードの読みやすさを重視しています。 たとえばブロックは波括弧 { } ではなくインデントで構造化されているなど、その構造に対するアプローチは独特です。

Wikipedia
Wikipedia
ウィキペディアPythonの記事があります。
ウィキバーシティ
ウィキバーシティ
ウィキバーシティPythonの学習教材があります。
Python

また、Pythonは、オブジェクト指向・インタープリタ型・動的型付け・クロスプラットフォームなプログラミング言語です。 これらのアプローチは、プログラマーが小規模および大規模なプロジェクトで自己説明的で論理的なコードを書けるようにすることを目的としています。

目次編集

進捗状況の凡例

  数行の文章か目次があります。
 :本文が少しあります。
 :本文が半分ほどあります。
 : 間もなく完成します。
 : 一応完成しています。


入門編集

基本事項 — pythonの実行方法Hello, world!
変数と代入 — 変数とは代入識別子
数値入力と文字入力と出力表示 — input(), int(), float()
条件分岐と繰り返し — if, else, for, while
演算子 —
関数 — def、引数、ローカル変数、id()、戻り値、キーワード引数デコレーター

基礎編集

シーケンス
リスト — list ミュータブルなシーケンスオブジェクト
タプル — tuple イミュータブルなシーケンスオブジェクト
レンジ — range 範囲オブジェクト
array — array 要素の型を統一した配列オブジェクト
辞書
セット
モジュールのインポート — math モジュール、random モジュール、importlib
例外処理 — try、except、finally、複数の例外の場合分け
クラス — クラス定義、__init__()、self
ファイルの書き込みと読み込み — open関数, with文を使ったリソース管理、オープンモード、write、readline

応用編集

型ヒント — 型アノテーション

モジュール編集

標準モジュール編集

標準モジュール — 標準モジュールの一覧

Tkinter — GUIアプリケーションの作成
urllib — url拡張、識別
sqlite3 — 簡易的なデータベースの利用
yaml — yaml書式の解析

サードパーティモジュール編集

pipとPyPI — pip、Python Package Index
numpy — 数学、numpy.arrey
サードパーティデータベースモジュール — 拡張的データベースの利用
mysql — mysql、aiomysql
sqlarchemy
matplotlib — グラフの作成

拡張モジュールの作成編集

c言語による拡張
ctypesによる拡張

リファレンス編集

組込み関数
組込み型

Python 3.12 の新機能編集

Python 3.12 には、いくつかの新機能が追加されています。以下にいくつかの新機能とそれらを使用するためのコード例を示します。

  • Parenthesized context managers in with statements

Python 3.12 では、with ステートメントのコンテキストマネージャーに括弧を付けることができます。これにより、コンテキストマネージャーが複数の行にまたがっている場合に、より読みやすいコードを書くことができます。

コード例
# Before Python 3.12
with open("file.txt", "r") as file1, open("file2.txt", "r") as file2:
    # do something with file1 and file2

# With Python 3.12
with (open("file.txt", "r"), open("file2.txt", "r")) as (file1, file2):
    # do something with file1 and file2
  • Pattern matching improvements

Python 3.10 で導入されたパターンマッチングには、Python 3.12 で改良が加えられました。例えば、以下のように | を使用して複数のパターンをマッチングすることができます。

コード例
# Before Python 3.12
def my_function(x):
    if isinstance(x, int):
        # do something
    elif isinstance(x, str):
        # do something else
    elif isinstance(x, list):
        # do something else
    else:
        raise ValueError("Invalid argument type")

# With Python 3.12
def my_function(x):
    match x:
        case int:
            # do something
        case str:
            # do something else
        case list | tuple:
            # do something else
        case _:
            raise ValueError("Invalid argument type")
  • New zoneinfo module for working with time zones

Python 3.9 で導入された zoneinfo モジュールは、Python 3.12 で改良が加えられました。これにより、タイムゾーンを扱うためのさまざまな機能が追加されました。

コード例
# Before Python 3.12
import datetime
import pytz

tz = pytz.timezone("Asia/Tokyo")
now = datetime.datetime.now(tz)

# With Python 3.12
import datetime
import zoneinfo

tz = zoneinfo.ZoneInfo("Asia/Tokyo")
now = datetime.datetime.now(tz)
このページ「Python」は、まだ書きかけです。加筆・訂正など、協力いただける皆様の編集を心からお待ちしております。また、ご意見などがありましたら、お気軽にトークページへどうぞ。

整理作業中編集

Python/整理中 (複素数、正規表現、HTTPクライアント、JSON、pass)