def common(num):
#returns true if num is divisible by all the 'i' integers
if all(num%divisor==0 for divisor in (1,10)):
return True
else:
return False
print(common(2520)) --> True
print(common(10)) --> True
print(common(17)) --> False
こんにちは、この関数は、 'num'がすべての 'i'番号の共通倍数であるかどうかを判断することになっています。私はなぜ10が真を返すのか理解できません。 「すべて()」とは、すべてのテストが真でなければならないということですか? 私はそれを間違って使用していますか?私が使うべきもっと良い機能は何ですか?どんな洞察にも感謝します。'all()'関数を使用したIF文での複数ブールテスト
-WT
:機能
common()
のように、あなたはそれを定義することができますと同じ戻り値を持っていることを
注意二。あなたが何をすべきかは不明です。多分、あなたは、例えば 'range(1,10)'を望んでいたでしょうか?推測できない。 –
またはおそらく 'range(1,11)' – chapelo
もしあなたが 'if条件を実行していると分かったのなら、FYI、return True; else:return False'、実際には 'return condition'を行うだけです。 (ある状況では、Pythonは 'if'文のブール値に変換しますので、スーパーバイヤーにしたい場合は' return bool(condition) 'を実行してください) – detly