Python中用函数输出所有水仙花数
时间: 2023-12-26 12:06:58 浏览: 67
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。例如:1^3 + 5^3 + 3^3 = 153,因此 153 就是一个水仙花数。
下面是一个 Python 函数实现输出所有水仙花数的方法:
```python
def narcissistic_number():
for num in range(100, 1000):
# 求数字的位数
n = len(str(num))
# 计算每个位上的数字的n次方之和
total = 0
for digit in str(num):
total += int(digit) ** n
# 如果等于本身,则为水仙花数
if total == num:
print(num)
```
在这个函数中,我们使用 for 循环遍历 100 到 999 之间的整数。然后,我们计算每个数的位数,以及每个位上数字的 n 次方之和。如果这个和等于这个数本身,那么这个数就是一个水仙花数,我们就将它输出。
阅读全文