用Python编写程序以过滤给定序列中的阿姆斯壮数
假设您有一个序列以及用于过滤阿姆斯特朗数的结果,
original series is 0 153 1 323 2 371 3 420 4 500 dtype: int64 Armstrong numbers are:- 0 153 2 371 dtype: int64
为了解决这个问题,我们将遵循以下步骤-
定义一个系列。
创建一个空列表并设置循环以访问所有系列数据。
将armstrong初始值设置为0,并创建临时变量以逐一存储系列元素。它的定义如下
l = [] for val in data: armstrong = 0 temp = val
创建while循环,并检查temp>0并按temp%10计算余数。通过取余数的立方来添加armstrong值,然后将温度值除以10,直到达到0,以终止循环。它的定义如下
while(temp>0): rem = temp % 10 armstrong = armstrong + (rem**3) temp = temp //10
设置是否将原始值与温度值进行比较的条件。如果匹配,则将值附加到列表中。
if(armstrong==val): l.append(val)
最后,使用来检查系列中存在的列表值isin()。它的定义如下
data[data.isin(l)]
例子
让我们看下面的代码以获得更好的实现-
import pandas as pd
data = pd.Series([153,323,371,420,500])
print("original series is\n", data)
l = []
for val in data:
armstrong = 0
temp = val
while(temp>0):
rem = temp % 10
armstrong = armstrong + (rem**3)
temp = temp //10
if(armstrong==val):
l.append(val)
print("Armstrong numbers are:-")
print(data[data.isin(l)])输出
original series is 0 153 1 323 2 371 3 420 4 500 dtype: int64 Armstrong numbers are:- 0 153 2 371 dtype: int64
热门推荐
7 简短的二胎祝福语
10 简短霸气女儿生日 祝福语
11 祝福语高考小众诗句简短
12 元旦祝福语20秒简短
13 老师过年祝福语大全 简短
14 一生祝福语简短
15 产检祝福语简短霸气
16 朋友店开张祝福语简短
17 生日爱情祝福语大全简短
18 朋友女儿生日祝福语 简短