Python如何计算有规律数的多项式之和
这篇文章将为大家详细讲解有关Python如何计算有规律数的多项式之和,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
程序分析:首先需要有接收用户输入的代码,类似如下格式:
x = input('项数:\n')y = input('数字:\n')
关键在于计算出每一项的值,和自然就出来了。
最终实现的代码如下:
from functools import reduce#代表其中某项Tn = 0#存所有项的列表Sum = []#项数nn = int(input('项数:'))#值为aa = int(input('数字:'))for count in range(n): Tn = Tn +a a = a*10 Sum.append(Tn) print(Tn)Sum = reduce(lambda x,y : x+y,Sum)print('计算之和为:%d' % Sum)程序第一行from functools import reduce,引入reduce后,在后面才能使用;
Sum.append(Tn)代表将Tn的值,加入列表Sum项中;
lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数。
例如:
add = lambda x, y : x+y
add(1,2) # 结果为3
reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接收两个参数,reduce()对list的每个元素反复调用函数f,并返回最终结果值。
程序运行结果:
项数:4数字:22222222222计算之和为:2468
关于“Python如何计算有规律数的多项式之和”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。版权声明:如无特殊标注,文章均为本站原创,转载时请以链接形式注明文章出处。
评论