本やUdemy、Progateなどを用いてPythonやhtml、cssの学習過程を残していきます。

【Python入門】文字列の基本的なメソッドを実際に使って理解していく

python_strmethod

「Pythonで文字列を操作?したいなー。どうやるんだっけ。」とふと思った時に覗ける様、学んだ文字列のメソッドをメモしておきます。

upperメソッド

文字列.upper()・・・文字列を全て大文字にして返す。

 s = "Hello python"   
 print(s.upper()) 
 >>>HELLO PYTHON

lowerメソッド

文字列.lower()・・・文字列を全て小文字にして返す。

 s = "Hello python"
 print(s.lower())
 >>>hello python

titleメソッド

文字列.title()・・・各単語毎に先頭を大文字に、それ以外を小文字にして返す。

 s = "hello python"
 print(s.title())
 >>>Hello Python

 s = "HELLO PYTHON"
 title
 print(s.title())
 >>>Hello Python

capitalizeメソッド

文字列.capitalize()・・・文字列の先頭を大文字にそれ以外を小文字にして返す。

 s = "Hello Python"
 print(s.capitalize())
 >>>Hello python

 s = "HELLO PYTHON"
 print(s.capitalize())
 >>>Hello python

ピンポイントで文字列の大きさを調整したい場合はupper,lowerメソッドを使って行います。

 s = "hello PYTHON"
 print(s.capitalize())
 Hello python

 #Hだけ大文字にして、他は何も変えたく無い
 print(s[0].upper() + s[1:])
 >>>Hello PYTHON

swapcaseメソッド

文字列.swapcase()・・・大文字を小文字に、小文字を大文字に変換して返す。

 s = "hello PYTHON"
 print(s.swapcase())
 >>>HELLO python

findメソッド

文字列.find(検索したい要素)・・・検索したい要素を左側から探し、一番初めに出てくる要素番号を返す。

 s = "hello PYTHON"

 #hの場所を探す
 print(s.find("h"))
 >>>0

 #pの場所を探す → 小文字のpが要素に入っていない為、-1が返ってくる。
 print(s.find("p"))
 >>>-1

 print(s.find("P"))
 >>>6

※検索したい要素が、文字列内に無い場合は”-1″が返ってきます。

文字列.rfind(検索したい要素)・・・検索したい要素を右側から探し、一番初めに出てくる要素番号を返す。

 s = "hello python"

 #rfindでhの場所を探す
 print(s.rfind("h"))
 >>>9

 #rfindでoの場所を探す
 print(s.rfind("o"))
 >>>10

 #rfindでeの場所を探す
 print(s.rfind("e"))
 >>>1

countメソッド

文字列.count(数えたい要素)・・・数えたい要素の要素数をカウントして返す。

 s = "hello python PYTHON"
 #oの要素数を数える -> 大文字と小文字は別で認識している模様
 print(s.count("o"))
 >>>2

全ての要素数をカウントしたい場合は、uppper,lowerメソッドを使って、大文字・小文字どちらかに統一してからカウントをかける。

 s = "hello python PYTHON"
 
 #oの要素数を数える
 print(s.lower().count("o"))
 >>>3

startswithメソッド

文字列.startswith(確かめたい要素 or 文字列)・・・文字列の先頭に、確かめたい要素、もしくは文字列があるかどうかをTrue,Falseで返す。

True と Falseはbool型と言い、真偽を表します。

変数の型については、【Python入門編】変数の使い方を詳しくメモしていくに記載しておりますので、ご確認ください。

 s = "hello python PYTHON"

 #hから始まるか確認
 print(s.startswith("h"))
 >>>True

 #helloから始まるか確認
 print(s.startswith("hello"))
 >>>True

 #pythonから始まるか確認
 print(s.startswith("python"))
 >>>False

endswithメソッド

文字列.endswith(確かめたい要素 or 文字列)・・・文字列の最後に、確かめたい要素、もしくは文字列があるかどうかをTrue,Falseで返す。

 s = "hello python PYTHON"

 #Nで終わるか確認
 print(s.endswith("N"))
 >>>True

 #PYTHONで終わるか確認
 print(s.endswith("PYTHON"))
 >>>True

 #helloで終わるか確認
 print(s.endswith("python"))
 >>>False

stripメソッド

文字列.strip()・・・最初と最後にある空白を取り除いた文字列を返す。

 s = "     hello python      "

 print(s)
 >>>     hello python      

 print(s.strip())
 >>>hello python

文字列.lstrip()・・・最初にある(左側の)空白を取り除いた文字列を返す。

文字列.strip()・・・最後にある(右側の)空白を取り除いた文字列を返す。

 s = "     hello python      "
 print(s)
 >>>     hello python      

 #左側の空白を取り除く
 print(s.lstrip())
 >>>hello python      

 #右側の空白を取り除く
 print(s.rstrip())
 >>>     hello python

※ちょっと分かりづらいですが、rstrip()で右側のスペースがなくなっています。

replaceメソッド

文字列.replace(検索したい文字列,置き換えたい文字列,置き換えたい回数)・・・検索したい文字列を、置き換えたい文字列へ置換して文字列を返す。

 s = "hello python"
 # hello -> こんにちは へ置き換える
 print(s.replace("hello","こんにちは"))
 >>>こんにちは python

 #最初のl を Lに置き換える
 print(s.replace("l","L",1))
 >>>heLlo python

centerメソッド

文字列.center(文字数)・・・文字列を指定した文字数の中央に寄せる

 s = "hello"
 #20文字の範囲で中央に寄せる
 print(s.center(20))
 >>>       hello        

r/l justメソッド

文字列.rjust(文字数)・・・文字列を指定した文字数の右に寄せる

文字列.ljust(文字数)・・・文字列を指定した文字数の左に寄せる

 s = "hello"

 #指定した20文字の範囲内で右に寄せる
 print(s.rjust(20))
 >>>               hello
 #指定した20文字の範囲内で左に寄せる
 print(s.ljust(20))
 >>>hello               

※分かりづらいですが、helloの右には15文字分のスペースがあります。

splitメソッド

文字列.split(区切り文字)・・・指定した区切り文字毎に要素を分割し、リストとして返す。

 s = "he ll o py tho n"
 #スペースで区切る
 print(s.split(" "))
 >>>['he', 'll', 'o', 'py', 'tho', 'n']

splitlinesメソッド

文字列.splitlines()・・・指定した改行(文字)毎に要素を分割し、リストとして返す。

 s = """1 Hello
 2 Python"""

 print(s)
 >>>1 Hello
    2 Python
 
 #改行毎に分割し、リストとして返す
 print(s.splitlines())
 >>>['1 Hello', '2 Python']

joinメソッド

文字列.join(リスト)・・・リストを文字列で連結させて返す。

 #リストl を ssで連結する
 print(ss.join(l))
 >>>he-ll-o-py-tho-n

 #リストl を連結する
 print("".join(l))
 >>>hellopython

isalnumメソッド

文字列.isalnum()・・・文字列が全て英数字かどうか確認し、ブール値で返す。

 s = "hello python 3"
 ss = "hellopython3"
 sss = "ハローpython3!"

 print(s.isalnum())
 >>>False

 print(ss.isalnum())
 >>>True

 print(sss.isalnum())
 >>>False

isalphaメソッド

文字列.isalpha()・・・文字列が全て英字かどうか確認し、ブール値で返す。

 s = "hello python"
 ss = "hellopython3"
 sss = "ハローpython3!"
 ssss = "hellopython"

 print(s.isalpha())
 >>>False

 print(ss.isalpha())
 >>>False

 print(sss.isalpha())
 >>>False

 print(ssss.isalpha())
 >>>True

isdigitメソッド

文字列.isdigit()・・・文字列が全て数字かどうか確認し、ブール値で返す。

 s = "hello python"
 ss = "hellopython3"
 sss = "12345"

 print(s.isdigit())
 >>>False

 print(ss.isdigit())
 >>>False

 print(sss.isdigit())
 >>>True

※int.isdigit()を実行すると、AttributeError: ‘int’ object has no attribute ‘isdigit’ が出現します。

islowerメソッド

文字列.islower()・・・数字を除く文字列が全て小文字かどうか確認し、ブール値で返す。

 s = "hello python"
 ss = "hellopython3"
 sss = "hello PYTHON"

 print(s.islower())
 >>>True

 print(ss.islower())
 >>>True

 print(sss.islower())
 >>>False

isspaceメソッド

文字列.isspace()・・・文字列が全て空白かどうか確認し、ブール値で返す。

 s = "hello python"
 ss = "      "

 print(s.isspace())
 >>>False

 print(ss.isspace())
 >>>True

istitleメソッド

文字列.istitle()・・・文字列の先頭と空白後の先頭文字全てが大文字となっており、その他は小文字かどうか確認し、ブール値で返す。

 s1 = "hello python"
 s2 = "Hellopython"
 s3 = "Hello python"
 s4 = "Hello Python"
 s5 = "Hello PYTHON"

 print(s1.istitle())
 >>>False

 print(s2.istitle())
 >>>True

 print(s3.istitle())
 >>>False

 print(s4.istitle())
 >>>True

 print(s5.istitle())
 >>>False
この記事を書いた人

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です