Python 文字列を操作するサンプル

Pythonの文字列を操作するサンプルです。

確認環境
・Python 3

目次

結合する 文字列を結合する(+/空白)
  文字列を繰り返す(*)
取得する 指定した位置の文字を取得する(添字)
  部分文字列を取得する(スライス)
  文字列の長さを取得する(len)
  文字の存在を確認し真偽値を返す(in)
  文字数を返す(count)
分割する 文字列を分割してリストにする(split)
置き換える 文字列を置換する(replace)
変換する 文字列と数値の変換

文字列を結合する(+/空白)

# coding: utf-8

print("あ" + "い") #あい
print("あ" "い") #あい

a = "う"
b = "え"
print(a + b) #うえ

文字列は、+演算子で結合できます。
5行目のように文字列リテラル同士であれば、半角スペースをいれるだけで結合できます。

文字列を繰り返す(*)

# coding: utf-8

print("あ" * 2) #ああ
print("あいう" * 2) #あいうあいう

アスタリスク(*)の後の数値の数だけ文字列が繰り返されます。

指定した位置の文字を取得する(添字)

# coding: utf-8

print("あいう"[0]) #あ
print("あいう"[1]) #い
print("あいう"[2]) #う

[0]は、インデックス (添字)です。インデックスを指定して文字を取得できます。
最初の文字のインデックスは 0 です。

部分文字列を取得する(スライス)

# coding: utf-8

print("あいう"[0:1]) #あ
print("あいう"[0:2]) #あい

print("あいう"[1:2]) #い
print("あいう"[1:3]) #いう

部分文字列を取得します。スライス と呼ばれます。
最初の文字は0になります。

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

# coding: utf-8

print(len("あ")) # 1
print(len("あい")) # 2
print(len("a")) # 1
print(len("ab")) # 2

len関数は、文字列の長さを返します。

文字の存在を確認し真偽値を返す(in)

# coding: utf-8

a = "あいう"

print("あ" in a) # True
print("か" in a) # False

if "あ" in a:
	print("あり") # ありが出力される

if "か" not in a:
	print("なし") # なしが出力される

5行目は、指定の文字列があるのでTrueになります。
6行目は、指定の文字列がないのでFalseになります。
8行目は、if文でinを使用しています。
11行目は、if文でnot in を使用しています。

文字数を返す(count)

# coding: utf-8

a = "ABC-ABB"

b = a.count("B")
print(b) # 3

c = a.count("AB")
print(c) # 2

5行目は、countメソッドで文字Bを数えています。
8行目は、countメソッドで文字列ABを数えています。

文字列を分割してリストにする(split)

# coding: utf-8

str1 = 'a,b,c'
arr1 = str1.split(',')

for a in arr1:
	print(a) # a b cが出力される
print(arr1[0]) # a

splitメソッドは、引数の値で文字列をリストにします。

文字列を置換する(replace)

# coding: utf-8

a = "AAA-AA"
b = a.replace("AA", "B")
print(b) # BA-B

c = "AAAC-AA"
d = c.replace("A", "B")
print(d) # BBBC-BB

4行目は、1つめの引数に一致した文字列を2つめの引数の値に置き換えています。
8行目のように1つめの引数が1文字だと一致した文字全てが置き換わります。

文字列と数値の変換

# coding: utf-8

a = "10"
b = int(a)
print(type(b))  # <class 'int'>

c = float(a)
print(type(c))  # <class 'float'>
print(c)  # 10.0

d = 10
e = str(d)
print(type(e))  # <class 'str'>

4行目は、文字列を整数のint型にしています。
7行目は、文字列を小数点のあるfloat型にしています。
12行目は、数値を文字列にしています。

以下は、pythonの公式の3.1.2. 文字列型 (string)のリンクです。
https://docs.python.jp/3/tutorial/introduction.html#strings

関連の記事

Python 文字列の始め/終わりを確認(startswith/endswith)
Python 文字列の位置を取得する(find/index)
Python 文字列を分割してリストにする(split)
Python 大文字と小文字を変換する(upper/lower)
Python エスケープシーケンスとraw文字列のサンプル
Python 文字列の先頭と末尾を削除(strip/lstrip/rstrip)
Python 文字列を置換する(replace)

△上に戻る