Python での文字列操作まとめ

今日はPythonでの文字列操作をまとめていきます。

文字列操作

それでは、文字列操作の記述を確認していきましょう。

文字列を連結する

文字列の連結は + で行うことができます。

a = 'aaa'
b = 'bbb'
a + b # => 'aaabbb'

文字列をフォーマットする

文字列のフォーマットはいくつかの書き方が存在します。

単純に + でつなげる

name = 'leopanda'
python = 'Python 3.8.3'
'こんにちは' + name +  'さん、わたしは' + python + 'です'
# => 'こんにちはleopandaさん、わたしはPython 3.8.3です'

%形式 を利用する

'こんにちは%sさん、わたしは%sです' % (name, python)
# => 'こんにちはleopandaさん、わたしはPython 3.8.3です'

.format() を利用する

'こんにちは{0}さん、わたしは{1}です'.format(name, python)
# => 'こんにちはleopandaさん、わたしはPython 3.8.3です'

f 文字列 を利用する
私はこの方法が一番すっきりとしていると思うのでお勧めです。

f'こんにちは{name}さん、わたしは{python}です'
# => 'こんにちはleopandaさん、わたしはPython 3.8.3です'

文字列を分割する

文字列の分割は .split() で行うことができます。

空白文字で分割

value = 'aaa bbb ccc ddd eee'
value.split()  # => ['aaa', 'bbb', 'ccc', 'ddd', 'eee']

指定文字で分割

value = 'aaa,bbb,ccc,ddd,eee'
value.split(',')  # => ['aaa', 'bbb', 'ccc', 'ddd', 'eee']

文字列を接続する

文字列の接続は .join() で行うことができます。

カンマでつなげる

values = ['aaa', 'bbb', 'ccc', 'ddd', 'eee']
','.join(values)   # => 'aaa,bbb,ccc,ddd,eee'

ハイフン2つでつなげる

values = ['aaa', 'bbb', 'ccc', 'ddd', 'eee']
'--'.join(values)   # => 'aaa--bbb--ccc--ddd--eee'

前後の文字を除去する

前後の文字列の除去は .strip() で行うことができます。

前方の空白文字を除去

value = '     aaa     '
value.lstrip()   # => 'aaa     '

後方の空白文字を除去

value = '     aaa     '
value.rstrip()   # => '     aaa'

前後の空白文字を除去

value = '     aaa     '
value.strip()   # => 'aaa'

除去する文字を指定することもできます。

value = '.....aaa.....'
value.strip('.')   # => 'aaa'

複数の文字を指定することができます。

value = '.,...aaa..,..'
value.strip('.,')   # => 'aaa'

文字列を置換する

文字列の置換は .replace() で行うことができます。

value = 'aaabbbccc'
value.replace('bbb', 'ddd')   # => 'aaadddccc'

文字列比較

次に文字列比較の記述を確認していきましょう。

完全一致

完全一致は == で判断することができます。

value = 'aaabbbccc'
value == 'aaabbbccc'   # => True
value == 'Aaabbbccc'   # => False
value == 'aaa'         # => False
value == 'bbb'         # => False
value == 'ccc'         # => False

前方一致

前方一致は .startswith() で判断することができます。

value = 'aaabbbccc'
value.startswith('aaa')   # => True
value.startswith('bbb')   # => False
value.startswith('ccc')   # => False

後方一致

後方一致は .endswith() で判断することができます。

value = 'aaabbbccc'
value.endswith('aaa')   # => Flase
value.endswith('bbb')   # => False
value.endswith('ccc')   # => True

部分一致

部分一致(文字列を含むかどうか)は in で判断することができます。

value = 'aaabbbccc'
'aaa' in value   # => True
'bbb' in value   # => True
'ccc' in value   # => True
'ddd' in value   # => False

大文字小文字を区別せずに比較

大文字小文字を区別せずに比較するには .upper() もしくは .lower() を行った後に判断するようにします。

value = "AAABBBCCC"
value.lower() == "aaabbbccc"   # => True
value = "aaabbbccc"
value.upper() == "AAABBBCCC"   # => True
value = "AAAbbbCcc"
value.lower() == "aaaBBBcCC".lower()   # => True

今日のまとめ

今日は Python で文字列操作をやってみました。
普段使い慣れた言語ではないので初歩的なところでつまづくことも多いですが、しっかり基本か少しずつ学んでいこうと思います。

コメント

タイトルとURLをコピーしました