Pythonは数値の乗算を期待しているところで文字列の乗算を行っていますが、その理由はわかりません。Pythonの文字列の書式化と文字列の乗法の奇妙
>>> print('%d' % 2 * 4)
2222
>>> print('%d' % (2 * 4))
8
整数型に強制しても何もしません。 (私はこれが冗長で実現し、それは私のために馬鹿チェックです:?私はここで何が起こっているか(括弧を追加すると、それをしない)私の問題を解決しましたが、明らかに
>>> print('%d' % int(2) * int(4))
2222
これは私が持っているだけで気まぐれであれば
覚えていますが、これの背後にあるロジックを理解したいと思います。
私自身の答えを受け入れるのは上品ではないので、Karlは最も簡潔で正しい答えのチェックを受け取ります。 – Schof
"彼らは左から右へグループ化する"ので、演算子の "*"、 "%"グループには左連想があるからです。右から左の "**"グループ – newacct
"オペレータの優先順位があります。"それは医者のための何かを見ることですか? – balpha