编写一个程序在Pandas系列中附加从1到100的魔数

编写一个程序在Pandas系列中附加从1到100的魔数

通过附加从1到100的魔数的结果为,

魔数序列:
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

  • 创建列表推导式将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("魔数序列:\n",pd.Series(l))

输出

魔数序列:
0       1
1       10
2       19
3       28
4       37
5       46
6       55
7       64
8       73
9       82
10      91
11     100

解决方案2

  • 创建一个空列表

  • 设置for循环的范围从1到101,并将digit_sum设置为0

for i in range(1,101):
   digit_sum = 0
  • 将i值赋予临时值,以便i值不能更改。

  • 将while循环条件设置为temp & gt; 0

  • 计算余数和digit_sum如下,

while(temp>0):
   rem = temp % 10
   digit_sum = digit_sum + rem
   temp = temp // 10
  • 最后,如果条件设置为检查digit_sum值为1或10。如果为真,则将值附加到列表中
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))

输出

魔数序列:
0       1
1       10
2       193       28
4       37
5       46
6       55
7       64
8       73
9       82
10      91
11     100

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程