AIが解説!【文字列と数値】 Python インデックスについて

文字列はPythonにおいてシーケンス(配列)の一種であり、各文字に対して個別にインデックス(添字)を使ってアクセスできます。ここでは具体的な例を用いて、文字列とインデックスの基本的な使い方を説明します。
基本のインデックス
-
インデックスは0から始まる
文字列の左端の文字がインデックス0に対応し、次の文字は1、2、と順に割り振られます。 -
負のインデックス
マイナスのインデックスを使うと、右端から数えます。たとえば、インデックス-1は文字列の最後の文字を指します。
例
s = "Hello, World!"
# インデックスを用いた個々の文字の参照
print(s[0]) # 出力: H
print(s[7]) # 出力: W
# 負のインデックスを用いた参照
print(s[-1]) # 出力: !
print(s[-5]) # 出力: o (右から5番目の文字)
スライス
インデックスを範囲指定(スライス)することで、部分文字列を取得することができます。
-
基本形式:
s[start:end]startは開始位置、endは終了位置(終了位置は含まれません)。 -
例
-
s[0:5]は先頭から5文字取り出します -
s[7:12]で「World」を取得します
-
s = "Hello, World!"
# 0から4まで(5文字目は含まれない)
print(s[0:5]) # 出力: Hello
# 7から11まで
print(s[7:12]) # 出力: World
スライスの応用
スライスは省略形も利用できます。
-
開始インデックスの省略:
s[:n]は先頭からn文字。 -
終了インデックスの省略:
s[n:]はn番目から末尾までの部分文字列。 -
例
s = "Python Programming"
# 先頭から6文字
print(s[:6]) # 出力: Python
# 7文字目以降
print(s[7:]) # 出力: Programming
# 全体をコピーする場合もスライスで可能
copy_s = s[:]
print(copy_s) # 出力: Python Programming
まとめ
-
文字列はシーケンス型なので、個々の文字に対してインデックスでアクセスでき、インデックスは0から始まります。
-
負のインデックスを使うと右側からアクセスできます。
-
スライスを用いることで、文字列の一部分を簡単に抽出できます。
これらの基本を理解することで、Pythonにおける文字列操作がより効率的に、かつ柔軟に行えるようになります。