bytearray() 可変バイトシーケンス
最終更新:2026-09-22
bytearray() 可変バイトシーケンス
bytearray() は可変バイト配列を返し、要素は 0-255 の整数である。
| カテゴリ | 組み込み関数 |
|---|---|
| 種類 | 組み込み関数 |
| Python バージョン | all |
📝 構文
bytearray([source[, encoding]]]])
⚙️ 引数
| source 任意 | Optional: an int (length), string, iterable of ints, or bytes-like object.(デフォルト値:None) |
|---|---|
| encoding 任意 | Encoding name used when source is a str, e.g. 'utf-8'.(デフォルト値:None) |
| errors 任意 | Error-handling scheme for encoding, e.g. 'strict' / 'ignore'.(デフォルト値:None) |
戻り値:bytearray. A mutable byte array whose elements are ints 0-255.
💥 例外
TypeError— Raised when source has an unsupported type.ValueError— Raised when an element is outside 0-255 or the encoding is invalid.
▶ 例
下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:
実行結果:
bytearray(b'Hello')
🏷️ 関連する組み込み関数
💡 関連するケース
さらに多くのケースは近日公開予定です。
❓ よくある質問
Qbytearray と bytes の違いは何ですか?
Abytearray は可変(要素の変更、append、スライス代入が可能)で、bytes は不変です。両者の要素は 0〜255 の整数です。
Q文字列から bytearray を作るのに、なぜ encoding を渡さなければならないのですか?
A文字列は文字であってバイトではないため、バイトに変換するにはエンコーディング(例:'utf-8')を指定する必要があります。bytearray('中文') を encoding なしで呼ぶと TypeError になります。
Qbytearray の要素はどのような型ですか?
A0〜255 の整数です。例:bytearray(b'hello')[0] は 'h' ではなく 104 を返します。文字に戻すには chr() を使います。
Q要素を 0〜255 の範囲外にできますか?
Aできません。範囲外の値を代入(例:ba[0] = 256)すると ValueError になります。