Python文字列の使い方:分割と結合、削除、検索、置換、正規表現、中央・左右寄せなど役立つTips
Python の文字列でよく使う関数をまとめました。
文字数のカウント
Python の文字数は len でカウントします。
a = 'apple'
s = len(a)
print(s) # 5
分割
文字列は split で分割します。下のコードは、半角スペースで分割した文字をリストにしています。
a = 'Apple Microsoft'
b = a.split(' ')
print(b)
# ['Apple', 'Microsoft']
結合(連結)
Python の join はリストの文字列を連結します。
a = ['Windows', 'Linux']
b = ' and '.join(a)
print(b)
# Windows and Linux
join は「接着剤にする文字列」から呼びます。リストでなく、文字列から呼ぶところがポイントです。
削除
Python の strip は文字列の前後にあるスペースやタブを削除します。
a = ' Amazon '
b = a.strip()
print(b)
# Amazon
検索
「文字列 in 文字列」で検索できます。
a = 'Apple'
if 'pp' in a:
print('a は pp をもつ')
else:
print('a は pp をもたない')
# a は pp をもつ
置換
Python で文字列を置換するときは、置換したい文字列から replace を呼びます。
a = 'Apple'
b = a.replace('App', 'Goog')
print(b) # Google
-
第一引数:置換前の文字列
-
第二引数:置換後の文字列
正規表現
Python の正規表現は re を使います。正規表現で数字を削除するコードを見てください。
import re
a = 'Windows95'
b = re.sub(r'[0-9]', '', a)
print(b) # Windows
正規表現の置換は re.sub です。
-
第一引数:正規表現
-
第二引数:置換後の文字列
-
第三引数:置換したい文字列(対象文字列)
中央寄せ・右寄せ・左寄せ
文字列を中央寄せにするときは center を使います。
x = 'Apple'
a = x.center(11)
b = x.center(11, '+')
print(a)
# Apple
print(b)
# +++Apple+++
center は対象文字列から呼び、第一引数に生成文字列の長さを指定します。第二引数に埋める文字を入れます。上のコードからわかるように、第二引数を省略すると半角スペースが埋まります。どちらも左右に 3 文字のスペースまたは記号があります。右寄せと左寄せも同様で、それぞれ rjust と ljust を使います。
x = 'Apple'
a = x.rjust(11)
b = x.rjust(11, '+')
c = x.ljust(11)
d = x.ljust(11, '+')
print(a)
# Apple
print(b)
# ++++++Apple
print(c)
# Apple
print(d)
# Apple++++++
書式
Python の format は文字列の書式を整えます。
x = '太郎'
a = '私は{}です'.format(x)
print(a)
# 私は太郎です
a の中かっこに x が入っています。複数の変数も対応しています。
x = '太郎'
y = '花子'
a = '私は{}です。あなたは{}です。'.format(x, y)
print(a)
# 私は太郎です。あなたは花子です。
f-strings
JavaScript のテンプレート・リテラルに近いものが Python にあります。
x = '太郎'
y = '花子'
a = f'私は{x}です。あなたは{y}です。'
print(a)
# 私は太郎です。あなたは花子です。
f のつく文字列(カンマの前に f がある文字列)は一種のテンプレートになり、中に変数を挿入できます。