今回は、Pythonで数値と文字の組み合わせを文字列として出力する方法についてご紹介します。

本記事は「ある程度他のプログラミング言語の経験はあるけど、あまりPythonは使ったことがない人を対象としたチートシート」です。私自身の備忘録的な感じでまとめています。
他にもPythonのおすすめ記事をこちらにまとめました。

星の数は記事で紹介しているプログラミングの難易度を示しているよ。自分のレベルに合わせて読んでみてね。
Pythonおすすめ記事
また、Pythonなどのプログラミングを本格的に勉強したのであれば、オンラインでも受講可能な「TECH ACADEMY」がオススメです。
専属のアドバイザーがついてくれるので、短期集中で必要なプログラミング技術を身に着けることができます。

「TECH ACADEMY」よるスキルアップで、もう一段上のエンジニアへステップアップしましょう!

また、AI開発や人工知能アプリに特化してもっと勉強したい人、AIエンジニアの資格取得や転職にチャレンジしてみたいという方には、Aidemyがおすすめです。こちらの記事で詳しく解説しています。

また、AIで転職したい人はこちらの記事もおすすめです。


文字と数値を組み合わせてprintするとエラーになる
Pythonでは、文字列(str型)と数値(int型など)をそのままprintでコマンドラインに出力すると、エラーになります。
name = '鈴木一郎'
age = 28
print('私の名前は' + name + 'です。' + age + '才です。')
# TypeError: can only concatenate str (not "int") to str

上の例では、int型とstr型を結合しようとするとエラーになるよ。
このままでは1つの文字列に結合できないので、数字を文字に変換などしてあげる必要があるよ。
文字と数値を結合する方法
文字と数値を結合してコマンドラインに出力する方法を2つご紹介します。
方法1:数値を文字型に変換する
数値をstrでキャストすることで、文字列に変換する方法です。
name = '鈴木一郎'
age = 28
print('私の名前は' + name + 'です。' + str(age) + '才です。')
# '私の名前は鈴木一郎です。28才です。

この数値を文字にキャストする方法はPythonだけでなく、他のプログラミング言語でもよく使われるよ。
方法2:formatメソッドを使う
別の方法として、.formatを使う方法があります。
波かっこ{}で囲まれた「置換フィールド」を、formatメソッドの引数が置換します。
name = '鈴木一郎'
age = 28
'私の名前は{}です。{}才です'.format(name, age)
# '私の名前は鈴木一郎です。28才です。

formatメソッドを使ったほうが、変数の方を気にしなくてもいいから便利だね。formatメソッドないの変数は左から順番に置換フィールドに入っていくよ。

置換フィールドには、書式を指定することでfloat型の変数に有効数字の桁数字表示することができるよ。この時には、{インデックス番号:書式設定}でコードしてね。.1fは下1桁を表示する小数点タイプを示しているよ。
name = '鈴木一郎'
height = 181.234
'私の名前は{0}です。{1:.1f}cmです'.format(name, height)
# '私の名前は鈴木一郎です。181.2cmです。
まとめ
今回は、Pythonで数値と文字の組み合わせを文字列として出力する方法についてご紹介しました。
コメント