欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

python 水仙花_python 水仙花

发布时间:2024/9/27 python 95 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python 水仙花_python 水仙花 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

#简单

def narcissus():

for n in range(100, 1000, 1):

a, b, c = n//100, (n//10)%10, (n%100)%10

if a ** 3 + b ** 3 + c ** 3 == n:

print(n)

#使用yield写法

def narcissus_yield():

m, n = 100, 999

while m <= n:

a, b, c = m // 100, (m // 10) % 10, (m % 100) % 10

if a ** 3 + b ** 3 + c ** 3 == m:

yield m

m = m + 1

#包含水仙花等。。。

def narcissus_all(min, max):

if type(min) != int or type(max) != int:

msg = "参数类型必须为int"

raise TypeError(msg)

if min is None or max is None:

msg = "参数值不能为None!!!"

raise ValueError(msg)

if max == 0 or max < min:

msg = "max不能为0或者max必须比min值大"

raise ValueError(msg)

length = len(str(max))

while min <= max:

temp_val, sum = min, 0

for n in range(length):

sum += (temp_val%10) ** length

temp_val //= 10

if min == sum:

yield min

min = min + 1

for n in narcissus_all(100000, 999999):

print(n)

总结

以上是生活随笔为你收集整理的python 水仙花_python 水仙花的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。