|
1鱼币
如图,我要实现题目中的功能,但是结果就只出一个370,求助各位大神,哪儿错了
您的代码是没有正确获取 result,您只将 result 赋值成了 pow(each // 100, 3) + pow((each - each // 100 * 100) // 10, 3)。
在下面的 +pow(each - each // 10 * 10, 3) 需要与 result 赋值的行同行,不然这就会理解为一个单独的语句,即计算pow(each - each // 10 * 10, 3) 的结果,进行 +(正) 运算,然后丢弃。
要注意,在 Python 中,要让下一行的代码接到上一行,必须使用 \ 字符,这才是正确的使用方法,而不是只有换行。
修改方法很简单,既可以直接删掉换行符,也可以在 result 赋值那行末尾加上 \ 字符。
- for each in range(100, 1000):
- result = pow(each // 100, 3) + pow((each - each // 100 * 100) // 10, 3) \
- +pow(each - each // 10 * 10, 3)
- if each == result:
- print(each)
复制代码
|
最佳答案
查看完整内容
您的代码是没有正确获取 result,您只将 result 赋值成了 pow(each // 100, 3) + pow((each - each // 100 * 100) // 10, 3)。
在下面的 +pow(each - each // 10 * 10, 3) 需要与 result 赋值的行同行,不然这就会理解为一个单独的语句,即计算pow(each - each // 10 * 10, 3) 的结果,进行 +(正) 运算,然后丢弃。
要注意,在 Python 中,要让下一行的代码接到上一行,必须使用 \ 字符,这才是正确的使用方法,而不是只有 ...
|