Python プログラミング

Pythonの文字列の変換・連結・置換・分割・トリミング・桁数揃え

投稿日:2018年8月5日 更新日:

こんにちは!シミダイ(@shimidai2100)です。

Pythonで文字列操作を行う方法を紹介します。

文字列を操作するといっても、変換連結置換分割トリミング桁数揃え検索などやりたいことは様々あります。

この記事ではPythonでよく使用する文字列操作をマスターするために役立ててください。


Pythonの文字列利用

Pythonでは以下のように文字列を宣言し利用しますます。

シングルクォーテーションもしくはダブルクォーテーションでくくって使用することが出来ます。

どちらも機能的に違いはありませんが、プロジェクトやドキュメントに合わせて使い分けましょう。

ちなみに海外ではシングルクォーテーションを使用することが圧倒的に多いです。

これは海外ではシングルクォーテーションがタイピングしやすく、ダブルクォーテーションがタイピングしにくいことが起因しているようです。

Githubや英語のドキュメントを作成する時にはシングルクォーテーションの方がよさそうです。

複数行の文字列を扱う

複数行の扱う場合には、シングルクォーテーションもしくはダブルクォーテーションを3つ重ねてくくります。

どちらでも動作に違いはありません。

改行コードの有無を指定する場合には「\」を使用します。

以下で動作の違いを確認してみましょう。

>>> # 改行を入れる
... string = '''
... Hello World.
... Hello World.
... Hello World.
... '''
>>> print(string)

Hello World.
Hello World.
Hello World.

>>>
>>> # 開始と終了行に改行を入れない
... string = '''\
... Hello World.
... Hello World.
... Hello World.\
... '''
>>> print(string)
Hello World.
Hello World.
Hello World.
>>>
>>> # 改行を入れない
... string = '''\
... Hello World.\
... Hello World.\
... Hello World.\
... '''
>>> print(string)
Hello World.Hello World.Hello World.

数値・配列型を文字列に変換

数値型データや配列型を文字列にするには「str」関数を使用します。

以下が使用方法です。

>>> number = 100
>>> list = [100, 200, 300, 400]
>>>
>>> type(number)
<class 'int'>
>>> type(array)
<class 'list'>
>>>
>>> str(number)
'100'
>>> str(array)
'[100, 200, 300, 400]'
>>>
>>> type(str(number))
<class 'str'>
>>> type(str(array))
<class 'str'>

文字列を連結

文字列を連結するには「+」を使用します。

以下が実際に連結させた例です。

>>> stringA = 'Hello '
>>> stringB = 'World.'
>>> string = stringA + stringB
>>> print(string)
Hello World.

文字列を置換

文字列の置換は文字列のメソッド「replace」を使用します。

以下が実際に文字列を置換させた例です。

>>> string_bf = 'Hello World.'
>>> string_af = string.replace('World.', 'Python World!!!')
>>> print(string_af)
Hello Python World!!!

文字列を分割

文字列の置換は文字列のメソッド「split」を使用します。

また分割した文字列はリスト型で返されますので注意してください。

以下が実際に文字列を分割させた例です。

>>> string = 'Hello World.'
>>> print(string.split(' '))
['Hello', 'World.']
>>>
>>> for val in string.split(' '):
... print(val)
...
Hello

文字列を大文字・小文字に変換

大文字にするのは文字列のメソッド「upper」、小文字にするのは文字列のメソッド「lower」を使用します。

以下が実際に文字列を大文字・小文字に変換させた例です。

>>> string = 'Hello World.'
>>> upper_string = string.upper()
>>> lower_string = string.lower()
>>> print(upper_string)
HELLO WORLD.
>>> print(lower_string)
hello world.

文字列をトリミング

空白文字の文字列のトリミングは先頭からは文字列のメソッドの「lstrip」、行末からは「rstrip」を使用します。

英語は左から右に書きますので、左側が先頭、右側が行末になります。

lstripは左(left)からトリム」、「rstripは右(right)からトリム」するということになりますので覚えておきましょう。

以下が実際に文字列を置換させた例です。

>>> string = ' Hello World.'
>>> lstrip_string = string.lstrip()
>>> print(lstrip_string)
Hello World.

文字列の桁数を揃える(0埋めなど)

文字列の桁数を揃えるのは文字列のメソッド「ljust」と「rjust」を使用します。

文字列を左揃えにして桁数を揃えるは「ljust」、文字列を右揃えにして桁数を揃えるは「rjust」です。

以下が実際に文字列の桁数を揃えた例です。

>>> string = '12345'
>>> ljust_string = string.ljust(10, '0')
>>> rjust_string = string.rjust(10, '0')
>>> print(ljust_string)
1234500000
>>> print(rjust_string)
0000012345
>>>
>>> ljust_string = string.ljust(10, '*')
>>> rjust_string = string.rjust(10, '*')
>>> print(ljust_string)
12345*****
>>> print(rjust_string)
*****12345

 

スポンサードリンク

関連記事

-Python, プログラミング

Translate »

Copyright© shimidai2100 , 2018 All Rights Reserved.