求助十八讲动动手第一题水仙花
本帖最后由 brianwang93 于 2020-4-9 13:29 编辑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()
不是很理解最后一个 print("所有的水仙花数分别是:", end='') 打印的内容是从哪里来的。上一行 print(each, end='\t') 不是已经打印过了吗?
为什么不是先调用函数,再打印 print("所有的水仙花数分别是:", end='')? 1,把代码发全,不然我也不知道打印的内容是哪里来的。
2,https://fishc.com.cn/thread-159045-1-1.html print默认换行,添加了第二个参数end用空字符取代了默认换行符 应该是下面还有一行print,end=' '作用是把分割多个print语句的默认换行符换成空格 print的end等于空,相当于取消了换行,下面代码执行了上面的函数,输出了结果,所以打印的内容就是函数的运行结果啊 上面的是函数
函数只有调用才能被执行
最后一行的
Narcissus()
是调用函数 print(each, end='\t')是函数里面的打印,作用是打印找到的水仙花数,只有调用函数才会print
你这一整段代码是一个程序,点击程序运行后,先执行-->print("所有的水仙花数分别是:", end=''),此时就会打印出“所有的水仙花数分别是:”。然后执行-->Narcissus(),此时开始调用函数,陆续得出各个水仙花数并执行-->print(each, end='\t')将各个水仙花数依次打印出来(打印在“所有的水仙花数分别是:”这一句话后面)。 EveLee 发表于 2020-4-9 16:41
你这一整段代码是一个程序,点击程序运行后,先执行-->print("所有的水仙花数分别是:", end=''),此时就会 ...
感谢大神解答
页:
[1]