python判断水仙花数的代码怎么写

655Z技术栈 Python编程 2025年07月01日 13

水仙花数是指一个 n 位数 (n ≥ 3),它的每个位上的数字的 n 次幂之和等于它本身。例如,153 是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。

以下是判断一个数是否为水仙花数的 Python 代码:

def is_armstrong_number(num): # 将数字转化为字符串以获取位数 str_num = str(num) # 获取数字的位数 n = len(str_num) # 计算每个位上数字的 n 次幂之和 armstrong_sum = sum([int(digit)**n for digit in str_num]) # 判断是否为水仙花数 if armstrong_sum == num: return True else: return False # 调用函数进行测试 num = 153 if is_armstrong_number(num): print(num, "是水仙花数") else: print(num, "不是水仙花数")

运行结果:

153 是水仙花数

提供PHP及ThinkPHP框架的定制开发、代码优化,PHP修改、ThinkPHP修改。

邮箱:yvsm@163.com 微信:yvsm316 QQ:316430983
关闭

用微信“扫一扫”