Python勉強~文字列編~

Pythonで扱われる型で、文字列型というのがあります。
前回、Hello Worldを表示する際に、少しだけ触れました。

本記事は、文字列型に焦点を当てざっくりと紹介していきます。
Python学習者の少しでも参考になれば、また助力になれば幸いです。

この記事で興味を持たれた方は、はじまり編も一緒にご覧ください。

最近流行りのプログラミング言語であるPython、今回はPythonを使う上で必要となる環境の準備について簡単に。 Pythonってどんな言語?Pythonのインストール~環境構築までをざっくりと触れています。
前回に続き、今回は開発環境の構築について紹介していきます。 開発環境の構築もいろいろあるので、自分が構築した環境と、 最近になって使い始...
前回までで、一通り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メソッドは個人的によく使います。

今後出てくる型においても組み合わせて使えるので便利です。

最後まで読んでいただき、ありがとうございます。

・こちらの書籍を参考にPythonの理解を深めました。

スポンサーリンク




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