Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

【python3】変数入りの文字列を作成したい、文字列中に変数を展開したい

最初にやってた書き方

error_message = "This is failed. time ( " + str(gps_time +" ) should be smaller than...."
みたいな感じの書き方をしていた
gps_timeがint型だとすると、文字列に変換しないといけないので
str()を使う必要がある

この方法の欠点は、書き方が込みってしまうので
サクッと内容が理解できないこと




後々もっと便利な書き方があると知った

■ 参考 : Python3 文字列中に変数展開したい

print( 'Hello %s!' % 'World' )

area = 3.14 * 5 * 5
print("area is %f" % area )

hoge = 3
foo = 6
print( hogehoge = %d, foo = %f' % (cat, dog) )

って感じで、%を使う
%s : 文字列
%f : 浮動小数点(doubleとかfloat)
%d : 整数
%% : %を表示する
(%x : 16進法、%o : 8進法)

これらの代わりに最後にある変数を代入してくれる
2つ以上変数がある場合は( )で囲ってカンマで区切ればOK


ランキング参加中です

↓クリックしていただけると嬉しいです〜