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