将1到100的幻数相加的结果是,
magic number series: 0 1 1 10 2 19 3 28 4 37 5 46 6 55 7 64 8 73 9 82 10 91 11 100
为了解决这个问题,我们将遵循以下方法-
创建列表理解以将1到100的值附加到列表ls。
ls = [i for i in range(1,101)]
应用lambda过滤器功能存储可被9个结果整除的值是1。
l = list(filter(lambda i:i%9==1,ls))
从列表中创建一个系列l。
pd.Series(l)
让我们看下面的代码以获得更好的理解,
import pandas as pd ls = [i for i in range(1,101)] l = list(filter(lambda i:i%9==1,ls)) print("magic number series:\n",pd.Series(l))
创建一个空列表
设置从1到101的循环范围,并将digit_sum设置为0
for i in range(1,101): digit_sum = 0
将i值分配给临时值,以使i值无法更改。
将while循环条件设置为temp> 0
计算余数和digit_sum,如下所示:
while(temp>0): rem = temp % 10 digit_sum = digit_sum + rem temp = temp // 10
最后设置是否要检查digit_sum值是1还是10的条件。如果为true,则将这些值附加到列表中
if(digit_sum==1 or digit_sum==10): l.append(i)
最后,从列表中生成一个序列。
让我们检查以下代码以获得更好的理解-
import pandas as pd l = [] for i in range(1,101): digit_sum = 0 temp = i while(temp>0): rem = temp % 10 digit_sum = digit_sum + rem temp = temp // 10 if(digit_sum==1 or digit_sum==10): l.append(i) print("magic number series:\n",pd.Series(l))
magic number series: 0 1 1 10 2 19 3 28 4 37 5 46 6 55 7 64 8 73 9 82 10 91 11 100