liuxiuqing 发表于 2020-5-4 21:11:26

大神来解答

def Narcissus():
    for each in range(100, 1000):
       temp = each
      sum = 0
      while temp:
            sum = sum + (temp%10) ** 3
            temp = temp // 10# 注意这里用地板除

      if sum == each:
            print(each, end='\t')

print("所有的水仙花数分别是:", end='')
Narcissus()

1:这个地方为什么要把each赋值给temp才可以运算?
2:这串代码不是应该先输出 那几个数字 在输出 所有的水仙花分别是?

永恒的蓝色梦想 发表于 2020-5-4 21:13:04

1.因为each留着有用

qiuyouzhi 发表于 2020-5-4 21:16:36

1,因为你最后要对each和sum做比较,你要是修改了each,就不能判断了。
2,函数定义不代表函数调用。

liuzhengyuan 发表于 2020-5-4 21:16:53

函数调用在输出后面的
页: [1]
查看完整版本: 大神来解答