等差数列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