4-6. Pythonの文字列はコレクションでシーケンス型


1. Pythonのコレクションとは?

コレクションとは、複数のデータをひとまとまりで扱うもので、リスト・辞書・タプル・集合などが挙げられます。

Pythonでは文字列もコレクションです。

Pythonのコレクションに属する型のイメージ図


文字列は「文字」の集まりとして扱われます。
そのため、リストと同様に len() で文字列サイズを取得することができます。

x = 'あいうえお'
print(len(x))
>> 5


2. Pythonのシーケンス型とは?

コレクションの中でも、順序のあるものをシーケンス型と言います。
集合と辞書は順序を持たないため、シーケンス型ではありません。
文字列・リスト・タプルは順序を持つので、シーケンス型です。

Pythonのシーケンス型のイメージ図


そのため、文字列はインデックスを指定することで要素(文字)を取得したり、分割することができます。

# インデックス指定で要素取得
x = 'あいうえお'
print(x[3])
>> え

# インデックス指定で分割
x = 'あいうえお'
print(x[1:3])
>> いう

3. コレクションに使える操作

コレクションに使える操作は以下のとおりです。

  • 要素数を len() 調べる
  • in で特定の要素が存在しているか調べられる

これ以外にも比較演算子やfor文を使ったものもあるのですが、それについてはまた後の章で説明します。

x = 'あいうえお'

print('あ' in x)
>> True

print('か' in x)
>> False


4. シーケンス型に使える操作

シーケンス型に使える操作は以下の通りです。

  • x + y : x と y を結合する
  • x * n : 要素 x を n 個、足す
  • x[i] : x のインデックス i の要素を取得
  • x[i:j] : 開始インデックス i , 終了インデックス j で xを分割
  • max(x) : x の最大値を取得
  • min(x) : x の最小値を取得
  • x.count(y) : x の中にある y の数
# 結合
x = '鈴木' + 'あかり'
print(x)
>> 鈴木あかり

# 同じ要素をn個足す
x = 'あ'
x_repeat = x * 5
print(x_repeat)
>> あああああ

# 最大値
x = 'あいうえお'
print(max(x))
>> お

# 最小値
x = 'あいうえお'
print(min(x))
>> あ

# 含まれる数
x = 'ああああいうえ'
print(x.count('あ'))
>> 4


5. 参考 – Python 公式ドキュメント


このエントリーをはてなブックマークに追加