【Python】文字列型の基本操作

Pythonにおけるstr(文字列型)の基本操作について入門者向けに解説します。

文字列型の変数

Pythonでは、変数に代入する値を"(ダブルクォーテーション) または '(シングルクォーテーション)で囲むと、変数は自動的に文字列型となります。「文字列型(str型)」の変数を使います。

x = "TEST1"
y = 'TEST2'

上の例では、文字列 'TEST1' を変数 x 、文字列 'TEST2' を変数 y に代入しています。
'TEST1'"TEST2"完全に同じ文字列として扱われます。つまり、機能的な違いはありません

ただし、文字列内にクォーテーションが含まれる場合

quote = "She said, 'Hello!'"
dialogue = 'He replied, "Nice to meet you."'

もし両方のクォーテーションが必要な場合は、エスケープ文字(\を使うこともできます:

escaped = 'She said, \'Hello!\''

文字列の連結(結合)

Pythonでは、+ 演算子を使って文字列同士を連結できます。

【文字列リテラル同士の連結】

a = "abc" + "def"
print(a)  # 出力結果:abcdef

【変数同士の連結】

a = "abc"
b = "def"
c = a + b
print(c)  # 出力結果:abcdef
【Python】文字列の連結
この記事では、Python言語でリスト(配列)に要素を追加する方法をソースコード付きで解説します。

文字列の置換

文字列の一部を別の文字列に置き換えるには、replace メソッドを使います。

data = "hello wall"
data = data.replace("wall", "world")
print(data)  # 出力結果:hello world
【Python】文字列の置換(replace関数)
この記事では、Pythonでで文字列を置換する方法をソースコード付きで解説します。

文字列の検索と判定

Pythonでは、文字列の中に特定の文字列が含まれているかを調べるために、以下のメソッドを使います/

メソッド 説明
find() 指定した文字列が最初に現れる位置(インデックス)を返す。見つからない場合は -1
index() find() と同様だが、見つからない場合はエラーを返す。
startswith() 指定した文字列で始まっているかを判定。True または False を返す。
endswith() 指定した文字列で終わっているかを判定。True または False を返す。
data = "hello world"
print(data.find("ell"))         # 出力:1
print(data.index("ell"))        # 出力:1
print(data.startswith("hello")) # 出力:True
print(data.endswith("world"))   # 出力:True
【Python】文字列の検索(find、index、startswith、endswidth関数)
この記事では、Pythonで文字列を検索する方法をソースコード付きで解説します。

数値 → 文字列への変換:str() 関数

数値を文字列に変換するには、str() 関数を使います。

num = 100
ans = str(num)
print(ans)  # 出力結果:100(文字列)

文字列との連結

a = 100
b = "abc"
c = str(a) + b
print(c)  # 出力結果:100abc
【Python】数値を文字列に変換(str関数)
この記事では、Pythonで文字列と数値の相互変換する方法をソースコード付きで解説します。

文字列 → 数値への変換

文字列を数値に変換するには、以下の関数を使います:

関数 説明
int() 整数に変換
float() 浮動小数点数に変換
a = "100"
b = 100
c = int(a) + b
print(c)  # 出力結果:200

a = "1.23"
b = 100
c = float(a) + b
print(c)  # 出力結果:101.23
【Python】文字列を数値に変換(int, float関数)
この記事では、Pythonで字列を数値に変換する方法をソースコード付きで解説します。

大文字・小文字の変換

文字列をすべて大文字または小文字に変換するには、以下のメソッドを使います。

data = "Hello World"
print(data.upper())  # 出力:HELLO WORLD
print(data.lower())  # 出力:hello world
【Python】文字列の大文字・小文字変換(lower、upper関数)
この記事では、Pythonで文字列を大文字・小文字変換する方法をソースコード付きで解説します。

文字列の分割

文字列の分割するには、split()メソッドを使います。
メソッドの引数に文字列を分割する区切り文字を指定すると、分割された文字列がリスト形式で返ってきます。

data = "hello,world"
data2 = data.split(",")
print(data2)  # 出力:['hello', 'world']

data = "hello world"
data2 = data.split()
print(data2)  # 出力:['hello', 'world']
【Python】splitで文字列の分割
Python3のsplitメソッドで文字列を分割する方法をソースコード付きで解説します。

文字列の部分削除

文字列の先頭または末尾の不要な文字を削除します。

data = "     hello world"
print(data.lstrip())         # 出力:"hello world"
print(data.lstrip("hello"))  # 出力:" world"
【Python】文字列の先頭・末尾・空白削除(lstrip、rstrip関数)
この記事では、Pythonで文字列の先頭・末尾・空白を削除する方法をソースコード付きで解説します。

関連ページ

【Python超入門】基礎から応用例まで幅広く解説
Pythonの使い方について、基礎文法から応用例まで入門者向けに解説します。
この記事を書いた人
西住技研

プログラミング言語「Python」を研究、仕事、趣味でデータ分析や作業自動化などに活用してきたノウハウを情報発信しています。
筆者の詳しいプロフィールやお問合せはこちらのページまで。
YoutubeX(旧Twitter)でも情報発信中です!

西住技研をフォローする
Python基礎

コメント

  1. y0ma10n0de5k0 より:

    文字列検索の部分に関する質問、失礼します。
    find, index, startswith endwith それぞれ ) が足りないと思うのですが、いかがでしょうか。
    読みやすくて学びやすいので重宝しています。
    ありがとうございます。

    • 管理人 より:

      ※y0ma10n0de5k0様
      コメントありがとうございます。
      ご指摘いただいたとおり、)が抜けておりましたので修正いたしました。
      こちらこそ、ご指摘&応援メッセージをいただきありがとうございます。

  2. タッキー より:

    確認お願いします

    int関数やfloat関数で次のように数値を文字列に変換すると、数値同士の足し算・・・

  3. タッキー より:

    確認お願いします

    【正規表現】reモジュール
    パターン式「|」 、内容「前後にある正規表現のいずれかと一致」