Pythonにおける文字列の操作は非常に自由度が高いです。ここではPythonにおける操作方法について解説しています。
この記事の対象
文字列とは
文字列とは「複数の文字が列に連なっているもの」です。基本的な文字列の扱いは「”_aaa_”」「”Hello World!”」などと「”」で括ることで文字列として表現します。文字列は変数などに代入して使用できます。
基本的な文字列表現
基本的な文字列表現としては、「””」「”」となります。しかし、場合によっては、「エスケープシーケンス」という特殊記号を用いて表現する場合があります。
ダブルクォートとシングルクォートの使用例
例えば以下のように記述します。
#ダブルクォートの使用例1
print("Test is hard") #printでの文字出力
#ダブルクォートの使用例2
test = "Test is hard" #変数に文字列を代入
「””」で文字列を挟むことで表現しますが、「”」のシングルクォートを使用することも可能です。
#シングルクォートの使用例1
print('Test is hard') #printでの文字出力
#シングルクォートの使用例2
test = 'Test is hard' #変数に文字列を代入
両方使用できる理由としては、文字列の中で使用したい場合があるからです。
#文字列でのシングルクォートを使用する場合
print("I'm good and you")
エスケープシーケンス
以下はエスケープシーケンスを使用する例です。
#ダブルクォートの文字列中にダブルクォートを使用する場合
print("He said,\"I'm good and you\".")
シングルクォートを使用する場合も「\」バックスラッシュを使用して表現します。
他にもエスケープシーケンスがあります。
よく使うエスケープシーケンス一覧
記号 | 意味 |
\ | 改行の無視 |
\’ | シングルクォート |
\” | ダブルクォート |
\n(\r\n) | 改行 |
三重引用符の使用
複数行の文字列をまとめて記述する場合には三重引用符を用いることがあります。
#三重引用符の使用例
moji = """
I like soccer
I like baseball
"""
文字列の操作
Pythonでは文字列の操作(分割、結合、置換、探索等)を簡単にできます。文字列の操作については以下にまとめています。
操作 | 内容 |
文字列の連結と結合 | 「+」演算子、join()メソッドを用いて文字列同士を連結、結合する方法について解説しています。 |
文字列への変数値代入 | 文字列の中に変数値を代入する方法(str()、format()メソッド)について解説しています。 |
文字列の演算 | 「+」「*」演算子を利用した文字列操作する方法について解説しています。 |
文字列における文字抽出 | 文字列における任意の文字をListを用いて抽出する方法について解説しています。 |
文字列の分割 | 文字列を分割する方法(split()メソッド)について解説しています。 |
文字列の置換 | 任意の文字列に変換する方法(replace()メソッド)について解説しています。 |
文字列における文字検索 | 文字列の中から任意の文字を検索する方法(find()メソッド)について解説しています。 |
文字列の小文字/大文字変換 | 文字列を小文字に変換する方法(lower()、upper()メソッド)について解説しています。 |
日本語を扱う注意点
文字コードの設定
Pythonコード内で日本語を扱う場合、ソースコードのエンコーディングを正しく設定することが必要です。通常、UTF-8エンコーディングが推奨されています。以下の行をPythonファイルの先頭に追加して下さい。
# -*- coding: utf-8 -*-
ファイルの読み書き
ファイルから日本語のテキストを読み取る場合や、日本語のテキストをファイルに書き込む場合、ファイルオープン時にエンコーディングを指定します。例えば、UTF-8エンコーディングを使用する場合は次のようにします。
with open('ファイル名.txt', 'r', encoding='utf-8') as file:
data = file.read()