#8 Pythonで学ぶ文字列操作の基本

プログラムの中で文字を扱う「文字列」は、名前の表示やメッセージの組み立てなど、非常によく使うデータです。この記事では、Pythonにおける文字列操作の基本と、よく使うメソッドを解説します。

文字列を連結する

Pythonでは、+を使って文字列同士をつなげられます。

greeting = "こんにちは、" + "太郎" + "さん"

f文字列という便利な書き方

変数の値を文字列に埋め込みたい場合、Pythonには「f文字列」という非常に便利な書き方があります。

name = "太郎"
greeting = f"こんにちは、{name}さん"

文字列の前にfを付け、埋め込みたい変数を{}で囲むだけです。+を使った連結より読みやすいため、現在のPythonではこの書き方が広く使われています。{}の中には計算式もそのまま書けます。

price = 100
print(f"合計: {price * 1.1:.0f}円")

よく使う文字列操作

  • len(text) 文字数を調べる
  • text.upper() 大文字に変換する
  • text.replace("A", "B") 文字を置き換える
  • text.split(",") 指定した記号で分割する
  • text.strip() 前後の余分な空白を取り除く

文字列の一部を検索・抽出する

特定の文字が含まれているかはin、範囲を指定して一部だけ取り出したい場合は「スライス」という書き方が使えます。

if "太" in name:
    print("「太」が含まれています")

print(name[0:1]) # 先頭1文字

複数行の文字列を扱う

改行を含む文章をそのまま書きたい場合は、3つの引用符"""で囲む書き方が使えます。

message = """
こんにちは。
お元気ですか?
"""

Pythonならではの注意点

Pythonの文字列は「イミュータブル(変更不可)」です。text.upper()のような機能を使っても、元の文字列そのものが書き換わるわけではなく、「変換された新しい文字列」が返されます。結果を使いたい場合は、必ず変数に代入し直しましょう。

複数の文字列を連結する

リストに入った複数の文字列をまとめて連結したい場合は、joinを使うと効率的です。

words = ["こんにちは", "太郎", "さん"]
print("、".join(words)) # こんにちは、太郎、さん

"区切り文字".join(リスト)という、区切り文字が先頭に来る書き方は初見だと戸惑いやすいですが、慣れると非常によく使う書き方です。

まとめ

Pythonの文字列操作は、f文字列を使った埋め込みが特に便利です。文字列が変更不可であることも意識しながら、upper()・replace()・split()・join()といった基本操作を覚えていきましょう。


本ページはプロモーションを含みます。

参考書籍(PR)

Pythonをもっと学びたい方には「スッキリわかるPython入門 第2版」がおすすめです。


PR

コードを書かずに自動化したい方へ

「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。

コメント

このブログの人気の投稿

#25 Rustで学ぶAI API(ChatGPT等)の呼び出し方の基本

#8 C++で学ぶ文字列操作の基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本