2017-12-16 10 views
-1

今日はPythonの文字列リテラル補間と数学の式を評価

a=4 
b=5 
f'{a+b}' 

上記のコードは、出力9、 私も変数に操作を入れしようとしていたを与え、リテラル文字列の補間につまずきました。

a=4 
b='+' 
c=5 

今どのようにリテラル文字列補間が期待される出力を生成することができ、documentationを見たが、それのうち多くを作ることができませんでした。あなたがeval()使用することができます

+0

こんにちは、 downvoteの方々に感謝しています。私はそれが何のために下落されたのかを教えてください。それは単に投票がうまく動作するかどうかをテストするためのものです:p – someone

答えて

1

r = eval(f'{a}{b}{c}') 

しかしを、それはあなたがそれを養う任意の文字列を評価するために、eval()の使用は通常、推奨されません。これには、悪意のあるユーザーが何らかの形で入力した任意のコードが含まれます。

+1

'+'、 'eval "{a} {b} {c}") 'が動作します。 – cdarke

+0

@stybl、yupは、evalが悪い、stackoverflow上の別の記事を見た、https://stackoverflow.com/questions/2371436/evaluating-a-mathematical-expression-in-a-string – someone

関連する問題