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

yipeiwu_com7年前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通用函数实现数组计算的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

详解Python给照片换底色(蓝底换红底)

详解Python给照片换底色(蓝底换红底)

现在网上出现了很多在线换底色的网页版工具是这么做的呢?其实用Python就可以实现。 环境要求 Python3 numpy函数库 opencv库 安装 下载适应版本的numpy函数库...

用Python编写一个简单的Lisp解释器的教程

用Python编写一个简单的Lisp解释器的教程

本文有两个目的: 一是讲述实现计算机语言解释器的通用方法,另外一点,着重展示如何使用Python来实现Lisp方言Scheme的一个子集。我将我的解释器称之为Lispy (lis.py)...

python3批量删除豆瓣分组下的好友的实现代码

python3批量删除豆瓣分组下的好友的实现代码 """ python3批量删除豆瓣分组下的好友 2016年6月7日 03:43:42 codegay 我两年前一时冲动在豆瓣关注了...

Python实现过滤单个Android程序日志脚本分享

在Android软件开发中,增加日志的作用很重要,便于我们了解程序的执行情况和数据。Eclipse开发工具会提供了可视化的工具,但是还是感觉终端效率会高一些,于是自己写了一个python...

python多线程编程方式分析示例详解

在Python多线程中如何创建一个线程对象如果你要创建一个线程对象,很简单,只要你的类继承threading.Thread,然后在__init__里首先调用threading.Threa...