文字列操作(変数展開, スライス, 置換, 検索, 分割)

どのプログラミング言語でも頻繁に利用されるのが文字列操作処理。ここでは、Pythonの代表的な文字列操作処理を利用例とともにご紹介します。

変数展開

文字列の中に変数を展開する方法です。

format関数

x = 10
y = 20
print("{0} + {1} = {2}".format(x, y, x + y))
10 + 20 = 30

f記法

Python3.6以降で利用できます。
f"{変数名}" と記述すると変数が展開されます。

x = 10
y = 20
print(f"{x} + {y} = {x + y}")
10 + 20 = 30

文字へのアクセス

インデックス (添字)

my_str = "01234"

print(my_str[0])    # 0
print(my_str[4])    # 4
print(my_str[-1])   # 4(右から数えます)
print(my_str[-2])   # 3(右から数えます)

スライス [(start):(end):(step)]

特定位置の文字列を取り出す方法です。

my_str = "01234"

print(my_str[2:4])      # 23
print(my_str[0:5:2])    # 024
print(my_str[:3])       # 012
print(my_str[3:])       # 34
print(my_str[::-1])     # 43210

文字列操作関数, メソッド

len
( 文字列の長さを取得 )

print(len("hello"))         # 5
print(len("hello world"))   # 11

replace
( 文字列置換 )

文字列を置換する方法です。

my_str = "あいうえお"
my_str = my_str.replace("うえ", "した")
print(my_str)
あいしたお

count
( 一致する文字列の数を取得 )

一致する文字列の数を取得する方法です。

my_str = "1112121"
print(my_str.count("1"))
print(my_str.count("12"))
print(my_str.count("11"))
5
2
1

find
( 一致する文字列の位置を取得 )

一致する文字列の位置を取得する方法です。

my_str = "1112121"
print(my_str.find("1"))
print(my_str.find("12"))

# 存在しないケース
print(my_str.find("3"))
2
0
-1

split
( 文字列分割 )

文字列を特定文字で分割する方法です。

my_str = "88,27,44"
my_str = my_str.split(",")
print(my_str[0])
print(my_str[1])
print(my_str[2])
88
27
44

in
( 特定文字が含まれるか判定 )

文字列の中に特定文字が含まれているか判定する方法です。

my_str = "あいうえお"
print("え" in my_str)
print("か" in my_str)
True
False
わくわくBank.
フリーランスのエンジニアとして活動してます。ここでは、ソフトウェア開発で必要とされる技術、用語、概念を整理しています。