Python入門

Pythonの文字列操作を学ぶ

この記事ではPythonにおける文字列の編集方法及び操作方法を解説していきます。

エスケープ対応

文字列に「”」や「’」を含めたい場合、「これはコマンドではなく文字列である」ことを伝える必要があります。(文字列の出力として「”」や「’」などのシステム仕様として使う文字列は特別にエスケープ対応を行う必要がある。)

その場合は\(バックスラッシュ)を適応すれば改善される。例えば以下のようにすれば表示される。

name = "My name is \"Yuta Kimura\"."
print(name) # My name is "Yuta Kimura".

in構文

文字列の中に特定の文字が含まれているか確認することができます。

sentence = "this is a pen"

print("p" in sentence) # True
print("7" in sentence) # False

文字列の文字抽出

文字列内の文字の抽出はインデックスを指定することで可能です。

word = 'develop'
print(word[0]) #d
print(word[-2]) #o
print(word[1:3]) #ev
print(word[:2]) #de
print(word[-2:]) #op

文字列を一文字ずつ処理する

for…inを使用することで文字列を一文字ずつ処理することができます。

word = 'develop'
for w in word:
  print(w)

#d
#e
#v
#e
#l
#o
#p

文字列の長さを出力する

len()を使用することで文字列の長さを確認することが可能です。

length = len("develop")
print(length) # 7

文字列を結合する

+を利用することで文字列同士を連結できます。

sentence1 = 'this is '
sentence2 = 'a pen.'
 
result = sentence1 + sentence2
 
print(result) #this is a pen.

あらかじめ定義したフォーマットに文字列を表示

フォーマットをあらかじめ定義することで、汎用的な文字列を実装することが可能です。

sentence = 'this is a {}.'
print(sentence.format('pen')) #this is a pen.

文字列を全て小文字にする

.lower()を使用することで文字列を全て小文字に変換することが可能です。

sentence = "THIS IS A PEN."
print(sentence.lower()) #this is a pen.

文字列を分割する

.split()を使うことで文字列を指定した文字が出現する単位で分割をします。

指定文字がなかった場合は、「スペース」がデフォルトで指定されます。

sentence = "THIS IS A PEN."

print(sentence.split())  #['THIS', 'IS', 'A', 'PEN.']

sentence = "THIS/IS/A/PEN."
 
print(sentence.split('/'))  #['THIS', 'IS', 'A', 'PEN.']

文字列内の指定した文字を置き換える

文字の置き換えを行いたい場合は.replace()を使用することで実装できます。

sentence = "This is a pen."
print(sentence.replace('a', 'the')) #This is the pen.

指定した文字を利用して文字を連結する

.join()を利用することで指定した文字を使用して文字列を連結することが可能です。

date = "/".join(["5", "31"])
print(date) #5/31