抽出する際、文字位置は先頭のインデックスは0から始まり、末尾から見る場合は-1からはじまる。
【特定の一文字を抽出】
文字列[文字位置]
サンプルコード
id = "abcdefg" #先頭の文字を抽出 firstCap = id[0] print("先頭の文字を抽出",firstCap) #末尾の文字を抽出 endCap = id[-1] print("末尾の文字を抽出",endCap) #3番目の文字を抽出 thirdCap = id[2] print("3番目の文字を抽出",thirdCap)
コンソールの出力結果
【指定した範囲の文字列を抜き出す(スライス)】
※開始位置と終了位置者は省略可能。
#開始位置~終了位置までを抽出 文字列[開始位置:終了位置] #文字列全体を抽出(開始位置と終了位置を省略) 文字列[:] #開始位置から最後まで抽出(終了位置を省略する) 文字列[開始位置:] #最初から終了位置までを抽出(開始位置を省略する) 文字列[:終了位置]
サンプルコード
myStr = "The pen is red." #文字列全て strResult = myStr[:] print("全ての文字:",strResult) #5文字目から最後まで strResult = myStr[4:] print("5文字目から最後まで:",strResult) #5文字目から3文字 strResult = myStr[4:4+3] print("5文字目から3文字:",strResult) #先頭~末尾から数えて7文字目の手前まで strResult = myStr[:-7] print("末尾7文字目~先頭:",strResult)
コンソールへの出力結果
【飛び飛びで抜き出す】
文字列[:終了位置:ステップ]
サンプルコード
myStr = "0123456789" #文字列から1つ飛ばしで文字を抽出 strResult = myStr[::2] print("1つ飛ばしの文字:",strResult) #4文字目から1文字飛ばしで取り出す myStr = "abc0123456789" strResult = myStr[3::2] print("4文字目から1つ飛ばし:",strResult) #後ろから1文字飛ばし myStr = "0123456789" strResult = myStr[::-2] print("後ろから1文字飛ばし:",strResult) #文字列を逆順にする myStr = "あいうえおかきくけこ" strResult = myStr[::-1] print("文字列を逆順にする:",strResult)
コンソールへの出力結果