ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
Python の文字列まわりの組み込み関数とは
Python では文字列を扱う処理の多くが組み込み関数として提供されています。組み込み関数は import 不要でいつでも呼び出せます。本ページでは文字列に関連する代表的な組み込み関数をまとめます。メソッド("abc".upper() など)は別ページで扱います。
主要な文字列系組み込み関数 一覧
| 関数 | 役割 | 例 |
|---|---|---|
str(x) | オブジェクトを文字列化 | str(123) → "123" |
len(s) | 文字列長 | len("abc") → 3 |
format(v, spec) | 書式整形 | format(3.14, ".1f") → "3.1" |
repr(x) | デバッグ用文字列表現 | repr("a") → "'a'" |
ascii(x) | 非 ASCII を \\u エスケープ | ascii("あ") → "'\\u3042'" |
ord(c) | 文字 → Unicode コードポイント | ord("A") → 65 |
chr(n) | コードポイント → 文字 | chr(65) → "A" |
bin(n) / oct(n) / hex(n) | 整数を 2/8/16 進文字列に | hex(255) → "0xff" |
input(prompt) | 標準入力から 1 行読む(戻り値は文字列) | name = input("name? ") |
print(*objs) | 文字列化して標準出力に出す | print("hello") |
str() — 文字列化
str() は任意のオブジェクトを人間が読みやすい形式の文字列に変換します。数値、リスト、辞書、自作クラスのインスタンスにも使えます。
str(123) # "123"
str(3.14) # "3.14"
str(True) # "True"
str(None) # "None"
str([1, 2, 3]) # "[1, 2, 3]"
str({"a": 1}) # "{'a': 1}"
# 文字に対しては変化なし
str("hello") # "hello"
# エンコード指定(bytes → str)
str(b"abc", "utf-8") # "abc"
関連: int("123") / float("3.14") は逆方向の変換です。
len() — 文字列の長さ
文字列の文字数を返します。Python 3 ではマルチバイト文字も1 文字 = 1 として数えられます。
len("hello") # 5
len("あいう") # 3 ← 文字数(Python 3 は Unicode)
len("") # 0
# 改行も 1 文字
len("a\nb") # 3
# bytes は「バイト数」
len("あ".encode("utf-8")) # 3 (UTF-8 では 3 バイト)
format() と f-string
format(value, spec) は値を書式指定で文字列化します。Python 3.6 以降はf-string(f"{value:spec}")が同じことをよりシンプルに書けるため、新規コードでは f-string が推奨です。
# format() 関数
format(3.14159, ".2f") # "3.14"
format(255, "08b") # "11111111" → ゼロ埋め 8 桁の 2 進数
format(1000000, ",d") # "1,000,000"
# 同じことを f-string で
x = 3.14159
f"{x:.2f}" # "3.14"
f"{255:08b}" # "11111111"
f"{1000000:,d}" # "1,000,000"
# 名前を埋め込む
name = "Alice"; age = 30
f"name={name}, age={age}" # "name=Alice, age=30"
# str.format() メソッド版
"{}-{}".format("a", "b") # "a-b"
"{name}:{age}".format(name="A", age=20) # "A:20"
repr() — デバッグ用表現
repr() はデバッグ用の正確な表現を返します。文字列の場合はクォート付きで返るのが str() との大きな違いです。
s = "hello\nworld"
str(s)
# hello
# world
repr(s)
# "'hello\\nworld'"
# 数値はどちらも同じ
str(123) # "123"
repr(123) # "123"
# f-string で !r 指定すると repr が呼ばれる
name = "Alice"
f"{name!r}" # "'Alice'"
f"{name!s}" # "Alice"
ord() / chr() — 文字とコードの相互変換
1 文字を Unicode コードポイント(整数)と相互変換します。文字コード関連の処理で必須です。
ord("A") # 65
ord("a") # 97
ord("あ") # 12354
chr(65) # "A"
chr(12354) # "あ"
chr(0x1F600) # "😀" 絵文字も
# 例: アルファベットを 1 つずらす
"".join(chr(ord(c) + 1) for c in "abc") # "bcd"
ascii() — 非 ASCII をエスケープ
ascii() は repr() に似ていますが、非 ASCII 文字を全て \\u エスケープします。ログを ASCII のみに保ちたい場合に便利です。
ascii("hello") # "'hello'"
ascii("あ") # "'\\u3042'"
ascii("café") # "'caf\\xe9'"
bin() / oct() / hex() — 進数変換
bin(10) # "0b1010"
oct(10) # "0o12"
hex(255) # "0xff"
# プレフィックスを外す
f"{255:b}" # "11111111"
f"{255:o}" # "377"
f"{255:x}" # "ff"
# 逆変換は int(s, base)
int("0xff", 16) # 255
int("1010", 2) # 10
input() / print() — 標準入出力
# 標準入力を 1 行読む(戻り値は str)
name = input("お名前は? ")
print(f"こんにちは {name} さん")
# 数値が欲しいなら int() / float() で型変換
age = int(input("年齢は? "))
# print のオプション
print("a", "b", sep="-") # "a-b"
print("loading", end="...") # 末尾の改行を抑制
print("err", file=sys.stderr) # 標準エラーへ
組み込み関数とメソッドの違い
文字列操作には組み込み関数と str 型のメソッドの 2 系統があります。混同しがちなので整理します。
| 系統 | 呼び方 | 例 |
|---|---|---|
| 組み込み関数 | 関数名(値) | len("abc") / str(123) |
| str メソッド | 値.メソッド名() | "abc".upper() / "abc".split(",") |
大文字化、置換、分割、検索などはメソッド側に揃っています。
関連
- str 型(文字列クラス)
- f-string / フォーマット文字列リテラル
- bytes 型 / encode / decode
- print 関数 / input 関数
- 組み込み関数 一覧
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?