Python入门练习:三位水仙花数(用"逗号"分隔输出结果)

本文介绍了一种使用Python编程语言查找所有三位水仙花数的方法,并探讨了如何正确格式化输出结果,确保数字间以逗号分隔且最后一个数字后面没有多余逗号。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

描述

"水仙花数"是指一个三位整数,其各位数字的3次方和等于该数本身。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬

例如:ABC是一个"3位水仙花数",则:A的3次方+B的3次方+C的3次方 = ABC。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬

请按照从小到大的顺序输出所有的3位水仙花数,请用"逗号"分隔输出结果。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬ ‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬

输入输出示例

输入输出
示例无输入111,222(输出仅表示格式,不表示对错)

小白的代码:

f=[]
for a in range(10):
    for b in range(10):
        for c in range(10):
            d = a **3 + b **3 + c **3
            if d == a*100 + b*10 + c and len(str(d))>=3:
                f.append(d)
print(','.join(str(i) for i in f))

写这段码费了很长时间,水仙花数的计算不是什么难问题,难在输出格式上了……
要求是用逗号分隔输出结果,但如果直接:
print(d,end=',')
出来的结果最后一个值后面也有逗号,想了很多办法都不能去掉。
最终的处理办法是:设立一个列表f,把结果都存到列表里去,然后print的时候遍历列表的元素,并在每个元素后面join ‘,’

大家还有什么好的办法吗?请留言。

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值