Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでint型を文字列(string)に変換する4つの方法を徹底解説

プログラミングにおいて、型変換(タイプコンバージョン)は、あるデータ型を別のデータ型へ変換したい場合に必要となる基本的な操作です。

Pythonには、整数(int)を文字列(str)に変換するための組み込み関数str()が用意されています。この記事では、str()をはじめとする複数の変換方法を、コード例と実行結果とともにわかりやすく解説します。

方法1:str()関数を使う

str()は、Pythonでint型を文字列に変換する際に最も広く使われている標準的な方法です。引数として整数値を受け取り、それを文字列型に変換して返します。

構文

str(整数型の変数)

コード例

num=2
print("変換前のデータ型",type(num))
num=str(num)
print(num)
print("変換後のデータ型",type(num))

実行結果

変換前のデータ型 <class 'int'>
2
変換後のデータ型 <class 'str'>

type()関数は、引数として渡された変数のデータ型を返します。上記のコードでは、変換前はnumのデータ型がint型であるのに対し、変換後はstr型(Pythonにおける文字列型)に変わっていることが確認できます。

方法2:f-string(フォーマット済み文字列リテラル)を使う

f-stringはPython 3.6以降で利用できる機能で、文字列の中に変数を埋め込む際によく使われますが、int型を文字列に変換する用途にも活用できます。可読性が高く、現在のPython開発では推奨される書き方の一つです。

構文

f'{整数型の変数}'

コード例

num=2
print("変換前のデータ型",type(num))
num=f'{num}'
print(num)
print("変換後のデータ型",type(num))

実行結果

変換前のデータ型 <class 'int'>
2
変換後のデータ型 <class 'str'>

方法3:「%s」指定子を使う

「%s」は古くから使われている文字列フォーマットの指定子です。C言語由来の書き方で、レガシーなコードベースでは今でも見かけることがあります。

構文

"%s" % 整数型の変数

コード例

num=2
print("変換前のデータ型",type(num))
num="%s" %num
print(num)
print("変換後のデータ型",type(num))

実行結果

変換前のデータ型 <class 'int'>
2
変換後のデータ型 <class 'str'>

方法4:.format()メソッドを使う

.format()メソッドは、波括弧{}のプレースホルダーに対して値を埋め込む方式のフォーマット手法です。Python 3系で広く使われてきた方法で、複数の値を整形して出力する場合にも便利です。

構文

'{}'.format(整数型の変数)

コード例

num=2
print("変換前のデータ型",type(num))
num='{}'.format(num)
print(num)
print("変換後のデータ型",type(num))

実行結果

変換前のデータ型 <class 'int'>
2
変換後のデータ型 <class 'str'>

まとめ:どの方法を選ぶべきか?

以上、Pythonでint型を文字列に変換する主な4つの方法を紹介しました。それぞれの特徴は以下の通りです。

  • str():シンプルで最も標準的な方法。単純な型変換ならこれ一択。
  • f-string:文字列への埋め込みと同時に変換でき、可読性が高い。Python 3.6以降で推奨。
  • %s指定子:レガシーなコードやログ出力などで使われる従来方式。
  • .format():柔軟なフォーマットが必要な場合に有効。

実際の開発では、int型の値を文字列変数に連結(append)したい場面などで型変換が必要になります。典型的な例の一つが「整数の桁を反転させる処理」です。数学的なロジックを実装して反転するよりも、一度文字列に変換してから反転する方が、はるかに簡単かつ直感的に実装できます。


  1. Pythonで文字列をint・floatに変換する方法をわかりやすく解説

    Pythonでは、ユーザー入力やファイル読み込みなどで取得した数値は、多くの場合文字列(str型)として扱われます。そのままでは計算に使えないため、int() や float() を使って数値型へ変換(パース)する必要があります。ここでは、変換に失敗した場合に備えた例外処理(try-except)を組み合わせた、安全な変換方法を紹介します。文字列をint(整数)に変換する整数を表す文字列をint型に変換するには、int() 関数を使用します。変換できない文字列が渡されると ValueError が発生するため、try-exceptで捕捉しておくと安心です。try:  &nb

  2. Pythonでリストの文字列表現をリストに変換する方法【ast.literal_evalの使い方】

    Pythonでは、[apple, orange, banana] のように文字列として表現されたリストを、実際のリストオブジェクトへ変換したい場面があります。そんなときに便利なのが、標準ライブラリの ast.literal_eval() です。 ast.literal_eval()とは ast.literal_eval() は、文字列をPythonの式として安全に評価するための関数です。任意のコードを実行してしまう危険性がある eval() と異なり、評価できるのは文字列・数値・タプル・リスト・辞書・ブール値(True / False)、そして None といったPythonのリテラル構造のみ