Pythonでは、文字からなるデータを、文字列 (string) といいます。
文字列は、テキストデータを表現するために使用され、変数に代入したり、様々なメソッドを使って編集することができます。
この記事では、Pythonでの文字列の基本的な使い方や操作方法について解説します。
文字列とは
Pythonの文字列(string)は、複数の文字からなるシーケンスであり、シングルクォーテーション(‘ ‘)またはダブルクォーテーション(” “)で囲まれます。
以下のように文字列を定義できます。
string_data = 'Hello, World!'上の変数の値が文字列であることを確認するには、組み込み関数 type によって確認できます。
type関数 は、任意の データを引数として、そのデータの種類を返します。 データの種類は、データ型もしくは型と呼ばれます。
type(string_data) # <class 'str'>文字列の定義
文字列は、シングルクォーテーションで囲っても、ダブルクォーテーションで囲って問題ありません。
string_data = 'Hello, World!'
print(string_data) # Hello, World!
string_data = "Hello, World!"
print(string_data) # Hello, World!Pythonは、シングルクォーテーションまたはダブルクォーテーションで囲った範囲を文字列として認識します。
※Pythonでは文字列型の作成でダブルクォーテーションとシングルクォーテーションの明確な使い分けはありません。
では、「好きな言語は‘Python‘です」とか「好きな言語は“Python“です」のような文字列を定義するにはどのようにすればいいのでしょうか?
string_data = "好きな言語は'Python'です"
print(string_data) # 好きな言語は'Python'です
string_data = '好きな言語は"Python"です'
print(string_data) # 好きな言語は"Python"ですエスケープシーケンスを使って特殊文字「’」や「”」を文字を定義することもできます。詳細は下記のエスケープシーケンスの章を参照してください。
複数行の文字列
クォートの3個続けて、文字列を囲むと複数行も文字列を作成することができます。
msg = """おはよう。
こんにちは。
こんばんは。"""
print(msg)
# おはよう。
# こんにちは。
# こんばんは。エスケープシーケンス
文字列に「Let’s GO」のように「’」がある場合、文字列をシングルクォーテーションで囲むとエラーになります。
特殊文字はエスケープシーケンスをすることで定義することができます。エスケープシーケンスは、「\」(Windows)または「\」(Mac)を入れると、エスケープすることができます。
string_data = 'Let\'s GO!'
print(string_data) # 'Let's GO!'バックスラッシュは、下記で入力できます。
- Mac : alt + ¥
- Windows : ¥
文字列の中に「\n」を入れると文字を改行することができます。
msg = 'おはよう。\nこんにちは。\nこんばんは。'
print(msg)
# おはよう。
# こんにちは。
# こんばんは。よく使うエスケープシーケンス文字は以下の通りです。
| エスケープシーケンス | 説明 |
|---|---|
| \n | 改行 |
| \t | 水平タブ |
| \r | キャレッジリターン |
| \” | ダブルクォーテーション |
| \’ | シングルクォーテーション |
| \\ | バックスラッシュ \ |
まとめ
本記事では、Pythonの文字列について説明をしました。
Pythonのプログラムでは、必ず文字列を使用します。すべてを覚える必要はありませんが、記憶の片隅に入れて必要になったときに、確認をするようにしましょう。
Python 掲載一覧
漢文家族には、下記のPythonの記事があります。
気になるところからチェックしてみてください。
【Pythonの基本】
第1回 Pythonとは?
第2回 基本文法
第3回 変数とデータ型
【文字列】
第4回 文字列 今ここ
【文字列関数とメソッド】
第7回 文字列の長さを調べる:len関数
【辞書型】
第9回 辞書型
第10回 辞書型(要素の情報の取得・要素の検索・辞書型のコピー・リスト型から辞書型を作成)
【制御構文】
第12回 if文
第13回 match文
第14回 for文
【日付と時刻】
第15回 日付と時刻
第16回 文字の日付を日付型に変換する
第17回 日付型の日付を文字型の日付に変換する
【その他】
第18回 バージョンの確認方法
プログラム学習に限界を感じていませんか?


