ここでは文字列における任意の文字を抽出する方法について解説しています。
1文字抽出
moji = "mojiretsu"
print(moji[0])
listにして任意の箇所を指定することで抽出できます。ただし、listは「0」始まりであることに注意して下さい。
結果
m
複数文字の抽出
moji = "mojiretsu"
print(moji[0:2])
Listで[0:2]と表記した場合は、0、1番目の2文字を出力すると言う意味になります。
例えば、[4:8]と表記した場合は「rets」になります。
結果
mo
便利な省略表記
「:」を用いた抽出
moji = "mojiretsu"
print(moji[:2])
「複数文字の抽出」で紹介した[0:2]を短縮して表記できます。これが上記の[:2]という表記です。
例えば、[7:]と表記した場合は「su」になります。
結果
mo
また、「-」演算子を用いた抽出方法もあります。
「-」を用いた抽出
moji = "mojiretsu"
print(moji[-1])
「-」演算子を用いると末尾から指定した数の文字を抽出します。
例えば、「-」演算子と「:」を用いた表記として「-2:」とします。この場合の出力結果は「su」となります。この結果は[7:]とした場合と同じです。
結果
u
特定のn番目ずつ抽出
moji = "mojiretsu"
print(moji[0:9:2])
print(moji[::2])
[0:9:2]と表記すると、先頭を含めて2個ずつ抽出する意味になります。例えば、[0:9:3]と表記すると出力結果は「mit」となります。これらの表記を省略して「 : : n」と表現できます。
次に[::2]とすると、[0:9:2]と表記した場合と同じ結果が出力されます。例えば、[::3]とすると、[0:9:3]と表記した場合と同じ「mit」と出力されます。
結果
mjrtu
List型について
List型については以下でまとめています。
項目 | 内容 |
PythonとList | PythonにおけるList型、Tuple型、Set型、辞書型(dict)について解説しています。 |