文字列を操作する

完了

Tip

詳細については、「 テキストと画像 」タブを参照してください。

テキストは、プログラミングにおいて最も一般的な種類のデータの 1 つです。 Pythonでは、テキストは文字列 (単一引用符または二重引用符で囲まれた一連の文字) として表されます。 Pythonには、文字列を操作および書式設定するための多くの組み込み方法が用意されています。

連結 (文字列の結合)

+演算子を使用して、2 つ以上の文字列を 1 つの文字列に結合できます。

first = "Hello"
last = "world"
message = first + ", " + last + "!"
print(message)

Output:

Hello, world!

連結は単純な組み合わせに適していますが、変数、句読点、スペースを混在させようとすると複雑になる可能性があります。

より良い方法: f 文字列

文字列と変数を組み合わせるよりクリーンでモダンな方法は、 f 文字列 (書式設定された文字列の場合は短い) です。 この種の文字列を作成するには、最初の引用符の外側に文字 f を配置し、変数名を中かっこ {}内に配置します。

name = "Alex"
print(f"Hello, {name}!")

Output:

Hello, Alex!

このコードは、 https://aka.ms/python-coderのオンライン Python インタープリターで自分で実行してみてください。

これ以上の型エラーはありません

前のユニットでは、テキストと数値input() + 1組み合わせることができないため、TypeErrorPythonどのように発生するかを確認しました。 F 文字列を使用すると、この問題が解決されます。 f 文字列では、Pythonは中かっこ内の数値をテキストに自動的に書式設定します。

age = input("How old are you? ")
print(f"Next year you will be {age + 1}") # Works perfectly!

Note

fプレフィックス (print("Hello, {name}") など) を忘れた場合、Pythonは中かっこの内側を見ることはありません。文字どおり画面に{name}が出力されます。

一般的な文字列メソッド

Python文字列には、一般的な操作のための多くの組み込みメソッドがあります。

Method それが何をするか Example Result
.upper() 文字列に含まれる英字をすべて大文字に変換します。 "hello".upper() "HELLO"
.lower() テキストを小文字に変換します。 "HELLO".lower() "hello"
.strip() 端から偶発的な空白スペースをトリミングします " hi ".strip() "hi"
.replace(old, new) 特定の文字を入れ替えます "cat".replace("c", "b") "bat"

len() を使用した文字のカウント

文字列内の合計文字数 (スペースや句読点を含む) を検索するには、スタンドアロンの len() 関数を使用します。 テキストはかっこ内に入ります。

username = "Alex!"
print(len(username)) # Output: 5

文字列メソッドが新しい文字列を返す

文字列メソッドでは、元の変数は変更されません。 代わりに、変更されたテキストの まったく新しいコピー を作成します。

この動作を確認します。

greeting = "hello"
greeting.upper()
print(greeting) # Output is STILL lowercase "hello"!

変更を保持する場合は、古い変数を上書きするか、結果を新しい変数に保存する必要があります。

greeting = "hello"
greeting = greeting.upper() # Saving the new uppercase copy
print(greeting) # Output: "HELLO"