等差数列python函数,python等差数列列表
用python3的语言编写等差数列求和,就是给出首项、项数、公差,求数列的前n项和
首项=int(input('首项:'))
创新互联公司主要从事网站设计制作、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务临安,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
项数=int(input('项数:'))
公差=int(input('公差:'))
print(sum(range(首项,首项+公差*项数,公差)))
python如何判断list是否等差数列?
看代码:
# -*- encoding: gbk -*-
def is_arithmetic_progression(prog):
_len = len(prog)
for i in range(0, _len - 2):
if prog[i+1] - prog[i] != prog[i+2] - prog[i+1]:
return False
return True
prog1 = [1,3,6,7,10,12]
prog2 = [1,2,3,4]
print is_arithmetic_progression(prog1)
print is_arithmetic_progression(prog2)
运行:
python if n == 1: c = 10 这个怎么理解?
这是一个递归函数:
age(1) = 10
age(n) = age(n-1) + 2
也就是说:
age(1) = 10
age(2) = age(1) + 2 = 12
同理:
age(3) = 14
age(4) = 16
对于一个数n会一直调用age(n-1),age(n-2)...,直到age(1),然后根据再计算出age(n)的值。
具体到这个函数,就是一个等差数列,完全不需要这样写,因为这样有两个隐患:
对于较大的n,效率低
如果n太大,会发生递归调用栈溢出。
正确的写法应该是:
def age(n):
return n * 2 + 8
python中的range函数
Python2.X range()函数可创建一个整数列表,一般用在for循环中。
Python3 range()函数返回的是一个可迭代对象,类型是对象,而不是列表类型,所以打印的时候不会打印列表。
Python3 list()函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表。
Python2 range()函数返回的是列表。
Python range()函数语法
range(start, stop[,step])
参数说明:
start:计数从start开始,默认是从0开始;比如:range(5)等价于range(0,5)。
stop:计数到stop结束,但不包括stop;比如:range(0,5)是[0, 1, 2, 3, 4]没有5。
step:步长,默认为1;比如:range(0,5)等价于range(0,5,1)。
分享标题:等差数列python函数,python等差数列列表
分享URL:http://scyanting.com/article/hdoogj.html