Python勉強~文字列編~

Pythonで扱われる型で、文字列型というのがあります。
前回、Hello Worldを表示する際に、少しだけ触れました。
本記事は、文字列型に焦点を当てざっくりと紹介していきます。
Python学習者の少しでも参考になれば、また助力になれば幸いです。
この記事で興味を持たれた方は、はじまり編も一緒にご覧ください。

Python 勉強 書籍

はじまり編①

はじまり編②

はじまり編③

スポンサーリンク




Pythonで文字列型いろいろ

Pythonでは、文字列型を表す際には、
文字列として扱いたい内容を'(シングルクォーテーション)または”(ダブルクォーテーション)で囲みます。
例えば、Pythonといった内容を文字列として扱いたい場合、
“Python” または ‘Python’と表記します。
例) xという変数に、文字列Pythonを代入してみます。

※ 変数とは、値を入れる箱のようなものです。

複数行にわたって文字列を変数に格納

例えば、複数行にわたって値を渡したい場合は、
‘(シングルクォーテーション)または”(ダブルクォーテーション)を3つ連ねます。

これをprint()関数で出力すると、

文字列の連結

文字列を連結させたい場合は、連結させたい文字列に”+”記号を付けます。

ここでは、変数xに”Hello”と”World”を連結した文字列を代入しています。
ちなみに変数に格納した文字列の連結もできます。

変数xに”Hello”を代入、変数yに”World”を代入
変数zに変数xと変数yを足した結果を代入しています。

文字列の繰り返し

文字列を繰り返し使いたい場合は、繰り返したい文字列に「* 回数」を付けます。

Pythonという文字列を3回繰り返しています。
ちなみに変数に格納した場合も可能です。

ちなみに、x = x * 3の表記は、下の表記も同等です。
変数xにxを3回繰り返した値を代入するといった意味になります。

文字列の追加

既にある文字列に対して、新たに文字列を追加したい場合、下のようになります。
例) 既にある変数xに対して、新たに文字列”Python”を追加したい。

文字列の置き換え

文字列を置き換えたい場合、”replace”メソッドを使います。
構文としては、
文字列型.replace(“置き換えたい文字列”,”置き換える文字列”)になります。
例) 変数xに文字列”HelloWorld”が代入されています。
変数xの”World”を”Python”に置き換えたい。

置き換えたい文字列を”World”
置き換える文字列を”Python”としています。

文字列の検索

ある文字列を検索したい場合、

  • 文字列の先頭が任意の文字であるか調べる → startswithメソッド
  • 文字列の末尾が任意の文字であるか調べる → endswithメソッド
  • 文字列中に任意の文字が含まれているか調べる
  • 検索した文字列のインデックス(索引)を調べる → findメソッド、indexメソッド

と用途によって複数の検索方法が存在します。

<startswith>
【構文】 文字列.startswith(“検索したい文字列”)

検索した結果を、True もしくは Falseで返してくれます。
True/Falseは真偽値と呼ばれ、Pythonでは、Boolean型として扱われます。
真をTrue、偽をFalseとされています。
startswithは先頭の文字が任意の文字でなければ、Falseを返します。

<endswith>
【構文】 文字列.endswith(“検索したい文字列”)

startswith同様、結果を真偽値で返してくれます。
startswithと違う点は、検索の開始位置になります。
startswithでは、先頭
endswithでは、末尾からとそれぞれ異なります。

<find,index>
【構文】 文字列.find(“検索したい文字列”, [開始位置], [終了位置])
【構文】 文字列.index(“検索したい文字列”, [開始位置], [終了位置])
※[開始位置]や[終了位置]は省略できます。

find, indexメソッドは、検索した結果を、検索した文字列がある位置で返してくれます。
コード中の”r”という文字列は、先頭から7番目にあったということになります。
ここで、疑問に思うかもしれません。”r”は先頭から、8番目じゃないの?ということに。
Pythonでは、文字列を先頭から数える時、1からではなく0から開始になるのです。
イメージとして、文字列は下図のように1つ1つ箱に入っている……感じです。

findメソッドは、左端から検索を開始するので、startswithと検索方法は近いです。
検索したい文字列が見つからない場合は、-1を結果として返します。
文字列”e”が-1なのは、検索の開始位置が、2番目の”l”からとなっているからです。
indexメソッドでは、-1ではなく、例外エラーとして結果を返してきます。

文字列の大小変換

文字列を大文字や小文字に変換したい場合、それそれupperメソッド、lowerメソッドを使います。
【構文】 文字列.upper()
【構文】 文字列.lower()

文字列の長さ

文字列の長さを知りたい場合、len関数を使います。
【構文】 len(“長さを知りたい文字列”)

おわりに

ざっくりと文字列型について触れてきました。
文字列の連結や繰り返しは、基本的なので覚えておくといいと思います。

また、今回紹介した文字列型を扱う際に便利なメソッドや関数は、
これら以外にもたくさんあります。
処理の用途に応じて使い分けてもらえたらなと思います。
中でも、len関数やstartswith,findメソッドは個人的によく使います。
今後出てくる型においても組み合わせて使えるので便利です。

スポンサーリンク




スポンサーリンク
スポンサーリンク