Python Koans中的问题指定“如果列表xs中的任何数字可被3整除,则返回True。否则,如果列表为空,则返回False。”
到目前为止,我已经写过return any(x % 3 == 0 for x in xs)
,但这只能提供2/3星。
答案 0 :(得分:0)
对于大数字,您的实施效率不高。也许它不够快?
对于除数的特殊情况,您可以计算您正在测试的数字中的数字总和。如果总和可以被3整除,那么你开始使用的数字也是如此。
例如
4789 => 4 + 7 + 8 + 9 = 28 => 2 + 8 = 10 => 1 + 0 = 1(不能被3整除)
4788 => 4 + 7 + 8 + 8 = 27 => 2 + 7 = 9(9可被3整除,因此也是4788)