189 8069 5689

python累计连乘函数 python连续相乘

python中连乘积怎么表示

# from functools import reduce

专注于为中小企业提供成都做网站、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业和硕免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

f_ = lambda X: X

f = lambda N,N0=1,F=f_: reduce(lambda X,Y: X*Y, (F(i) for i in range(N0,N+1)))

# f(2) == f_(1)*f_(2)

Python编写一个函数,求1*2*3*4...*n的乘积,编写主程序,从键盘输入一个整数,并

代码如下:

#coding=utf-8

n = int(input('请输入一个正整数:'))

num = 1

for i in range(1, n + 1):

num = num * i

print('结果:', num)

运行结果:

Python基础 numpy中的常见函数有哪些

有些Python小白对numpy中的常见函数不太了解,今天小编就整理出来分享给大家。

Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用。其实,list已经提供了类似于矩阵的表示形式,不过numpy为我们提供了更多的函数。

数组常用函数

1.where()按条件返回数组的索引值

2.take(a,index)从数组a中按照索引index取值

3.linspace(a,b,N)返回一个在(a,b)范围内均匀分布的数组,元素个数为N个

4.a.fill()将数组的所有元素以指定的值填充

5.diff(a)返回数组a相邻元素的差值构成的数组

6.sign(a)返回数组a的每个元素的正负符号

7.piecewise(a,[condlist],[funclist])数组a根据布尔型条件condlist返回对应元素结果

8.a.argmax(),a.argmin()返回a最大、最小元素的索引

改变数组维度

a.ravel(),a.flatten():将数组a展平成一维数组

a.shape=(m,n),a.reshape(m,n):将数组a转换成m*n维数组

a.transpose,a.T转置数组a

数组组合

1.hstack((a,b)),concatenate((a,b),axis=1)将数组a,b沿水平方向组合

2.vstack((a,b)),concatenate((a,b),axis=0)将数组a,b沿竖直方向组合

3.row_stack((a,b))将数组a,b按行方向组合

4.column_stack((a,b))将数组a,b按列方向组合

数组分割

1.split(a,n,axis=0),vsplit(a,n)将数组a沿垂直方向分割成n个数组

2.split(a,n,axis=1),hsplit(a,n)将数组a沿水平方向分割成n个数组

数组修剪和压缩

1.a.clip(m,n)设置数组a的范围为(m,n),数组中大于n的元素设定为n,小于m的元素设定为m

2.a.compress()返回根据给定条件筛选后的数组

数组属性

1.a.dtype数组a的数据类型

2.a.shape数组a的维度

3.a.ndim数组a的维数

4.a.size数组a所含元素的总个数

5.a.itemsize数组a的元素在内存中所占的字节数

6.a.nbytes整个数组a所占的内存空间7.a.astype(int)转换a数组的类型为int型

数组计算

1.average(a,weights=v)对数组a以权重v进行加权平均

2.mean(a),max(a),min(a),middle(a),var(a),std(a)数组a的均值、最大值、最小值、中位数、方差、标准差

3.a.prod()数组a的所有元素的乘积

4.a.cumprod()数组a的元素的累积乘积

5.cov(a,b),corrcoef(a,b)数组a和b的协方差、相关系数

6.a.diagonal()查看矩阵a对角线上的元素7.a.trace()计算矩阵a的迹,即对角线元素之和

以上就是numpy中的常见函数。更多Python学习推荐:PyThon学习网教学中心。

python:如何将列表中的所有项相乘

# -*- coding:utf-8 -*-

#py3

'''

用高级函数reduce()

'''

from functools import reduce

lis=[1,2,3,4,5]

r=reduce(lambda x,y:x*y,lis)#对序列lis中元素逐项相乘lambda用法请自行度娘

print(r)

reduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:

reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)

比方说对一个序列求和,就可以用reduce实现,比如:

from functools import reduce

def add(x,y):

return x+y

reduce(add,[1,2,3])

#结果是6

使用Python构造经验累积分布函数(ECDF)

对于一个样本序列 ,经验累积分布函数 (Empirical Cumulative Distribution Function)可被定义为

其中 是一个指示函数,如果 ,指示函数取值为1,否则取值为0,因此 能反映在样本中小于 的元素数量占比。

根据格利文科定理(Glivenko–Cantelli Theorem),如果一个样本满足独立同分布(IID),那么其经验累积分布函数 会趋近于真实的累积分布函数 。

首先定义一个类,命名为ECDF:

我们采用均匀分布(Uniform)进行验证,导入 uniform 包,然后进行两轮抽样,第一轮抽取10次,第二轮抽取1000次,比较输出的结果。

输出结果为:

而我们知道,在真实的0到1均匀分布中, 时, ,从模拟结果可以看出,样本量越大,最终的经验累积分布函数值也越接近于真实的累积分布函数值,因此格利文科定理得以证明。


当前名称:python累计连乘函数 python连续相乘
文章起源:http://cdxtjz.com/article/doojecs.html

其他资讯