Python通用函数实现数组计算的方法

yipeiwu_com6年前Python基础

一.数组的运算

数组的运算可以进行加减乘除,同时也可以将这些算数运算符进行任意的组合已达到效果。

>>> x=np.arange(5)
>>> x
array([0, 1, 2, 3, 4])
>>> x=5
>>> x=np.arange(5)
>>> x+5
array([5, 6, 7, 8, 9])
>>> x-5
array([-5, -4, -3, -2, -1])
>>> x*2
array([0, 2, 4, 6, 8])
>>> x/2
array([0. , 0.5, 1. , 1.5, 2. ])
>>> x//2
array([0, 0, 1, 1, 2], dtype=int32)

二.绝对值的运算

一共有三种方法,第一种方法是直接利用不是NumPy库的abs函数进行计算,第二种和第三种方法则是利用numpy库的abs函数和absolute函数进行运算。如下所示:

>>> x=np.array([1,2,3,-4,-5,-6])
>>> x
array([ 1, 2, 3, -4, -5, -6])
>>> abs(x)
array([1, 2, 3, 4, 5, 6])
>>> np.abs(x)
array([1, 2, 3, 4, 5, 6])
>>> np.absolute(x)
array([1, 2, 3, 4, 5, 6])

三.三角函数的运算

首先定义一个a的np当中的array对象,然后再进行运算:

>>> a
array([0.    , 1.57079633, 3.14159265])
>>> np.sin(a)
array([0.0000000e+00, 1.0000000e+00, 1.2246468e-16])
>>> np.cos(a)
array([ 1.000000e+00, 6.123234e-17, -1.000000e+00])
>>> np.tan(a)
array([ 0.00000000e+00, 1.63312394e+16, -1.22464680e-16])

四.指数和对数的运算

指数的运算:

>>> x=[1,2,3]
>>> x
[1, 2, 3]
>>> np.exp(x)
array([ 2.71828183, 7.3890561 , 20.08553692])
>>> np.exp2(x)
array([2., 4., 8.])

np.power(3,x)
array([ 3, 9, 27], dtype=int32)

对数的运算:

>>> np.log(x)
array([0.    , 0.69314718, 1.09861229])
>>> np.log2(x)
array([0.    , 1.    , 1.5849625])
>>> x
[1, 2, 3]
>>> np.log10(x)
array([0.    , 0.30103  , 0.47712125])

总结

以上所述是小编给大家介绍的Python通用函数实现数组计算的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

解决PySide+Python子线程更新UI线程的问题

在我开发的系统,需要子线程去运行,然后把运行的结果发给UI线程,让UI线程知道运行的进度。 首先创建线程很简单 def newThread(self): d = Data() p...

使用Python实现在Windows下安装Django

使用Python实现在Windows下安装Django

依赖 安装Python 安装git 安装Django 1.去Python官网下载Python3.6并配置好环境变量 Python下载地址:https://www.py...

python简单实现旋转图片的方法

本文实例讲述了python简单实现旋转图片的方法。分享给大家供大家参考。具体实现方法如下: # rotate an image counter-clockwise using the...

Django之使用celery和NGINX生成静态页面实现性能优化

Django之使用celery和NGINX生成静态页面实现性能优化

性能优化原理: 当我们要给client浏览器返回一个页面时,我们需要去数据库查询数据并将数据和基本页面模板渲染形成页面返回给客户端,但如果每一个用户访问时都去查询一次首页的的数据时,当日...

基于tensorflow加载部分层的方法

一般使用 saver.restore(sess, modeldir + "model.ckpt") 即可加载已经训练好的网络,可是有时候想值使用部分层的参数,这时候可以选择在加载网...