#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専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。
コメント
コメントを投稿