首页 > 编程语言 >软件测试|Python科学计算神器numpy教程(一)

软件测试|Python科学计算神器numpy教程(一)

时间:2023-06-19 19:01:53浏览次数:42  
标签:11 Python print 数组 np array numpy 软件测试

前言

之前我们使用matplotlib绘制了不一样的图形,其实在我们的绘制图像时,我们输入的数据都是经过处理之后再通过matplotlib以及pillow进行绘制的。我们在绘制图形的脚本里,引入了一个对数组执行数学运算和相关逻辑运算的第三方库——Numpy,当然numpy功能不止于此,它还是python科学计算的基础库,现在我们就来介绍一下numpy的使用。

安装

因为numpy是Python的第三方库,所以我们需要自行安装,安装完成之后才可以使用,安装只需要一条命令:

pip install numpy

注:numpy通常会结合SciPy 程序包一起使用,SciPy 可以看做对 NumPy 库的扩展,它在 NumPy 的基础上又增加了许多工程计算函数。

Numpy ndarray对象

NumPy 定义了一个 n 维数组对象,简称 ndarray 对象,它是一个一系列相同类型元素组成的数组集合。数组中的每个元素都占有大小相同的内存块,您可以使用索引或切片的方式获取数组中的每个元素。

ndarray 对象采用了数组的索引机制,将数组中的每个元素映射到内存块上,并且按照一定的布局对内存块进行排列,常用的布局方式有两种,即按行或者按列。

创建ndarray对象

Numpy提供了内置函数array()来创建ndarray,语法格式如下:

numpy.array(object, dtype = None, copy = True, order = None,ndmin = 0)

参数说明:

参数

描述说明

object

表示一个数组序列

dtype

可选参数,通过它可以更改数组的数据类型

copy

可选参数,表示数组能否被复制,默认是 True

order

以哪种内存布局创建数组,有 3 个可选值,分别是 C(行序列)/F(列序列)/A(默认)

ndim

用于指定数组的维度

创建一维数组

import numpy as np

a = np.array([11, 10, 9])
print(a)
print(type(a))

-------------------------
输出结果如下:
[11 10  9]
<class 'numpy.ndarray'>

创建多维数组

import numpy as np

a = np.array([[11, 10, 9],[6, 7, 8]])
print(a)
print(type(a))

---------------
输出结果如下:

[[11 10  9]
 [ 6  7  8]]
<class 'numpy.ndarray'>

改变数组元素的数据类型,可以使用设置 dtype

c=numpy.array([2,4,6,8],dtype="数据类型名称")

现在我们将数组中的元素改为字符串类型,如下:

import numpy as np

c=np.array([2,4,6,8],dtype="str")
print(c)

-------------------
输出结果如下:
['2' '4' '6' '8']
查看数组维数

我们可以通过ndim查看数组的维度

import numpy as np
arr = np.array([[1, 2, 3, 4], [4, 5, 6, 7], [9, 10, 11, 23]])
print(arr.ndim) 

--------------------
输出结果如下:
2
创建指定维度数组

使用 ndim 参数可以创建不同维度的数组

import numpy as np
a = np.array([1, 2, 3,4,5], ndim = 2)
print(a)
------------------------------------
输出结果如下:
[[1 2 3 4 5]]
数组变维

数组的形状指的是多维数组的行数和列数。Numpy 模块提供 reshape() 函数可以改变多维数组行数和列数,从而达到数组变维的目的,如下图:

软件测试|Python科学计算神器numpy教程(一)_NumPy

reshape() 函数可以接受一个元组作为参数,用于指定了新数组的行数和列数,示例如下:

import numpy as np
e = np.array([[11,12],[13,14],[15,16]])
print("原数组",e)
e=e.reshape(2,3)
print("新数组",e)

----------------------------
输出结果如下:
原数组 [[11 12]
 [13 14]
 [15 16]]
新数组 [[11 12 13]
 [14 15 16]]

总结

本文主要介绍了numpy模块的安装以及数组的一些常用方法,后续我们将介绍numpy的数据类型。

标签:11,Python,print,数组,np,array,numpy,软件测试
From: https://blog.51cto.com/u_15640304/6516920

相关文章

  • python3 面向对象编程--类的封装和继承
    #python3importrefromurllibimportrequestimportosclassPosterSpider(object):def__init__(self,path='./'):self.path=path#theentryofthisprocessdefgetStart(self,url):page=self.reqPage(url)......
  • python写入文件后中文乱码
    ......
  • 安全巡检 python HTML报告
    1.报表模板#catxunjian_table.html[root@yinliao-yanshireport_jinja2]#catxunjian_table.html<html><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"><title>insightreport</title><......
  • 软件测试|教你如何离线安装第三方库
    前言在日常工作生活中,我们有时需要在无法联网的设备中安装Python第三方库,在联网的情况下,我们安装第三方库只需要一条pip命令即可,运行命令之后,会自动开始下载;当我们在无法联网的情况下,我们就需要先行下载好第三方库,传输到未联网的电脑,并使用命令行安装。本文我们以安装requests库为......
  • 软件测试|pip安装第三方库报代理错误,怎么解决
    前言pip是我们使用python时最常用的一个工具,我们安装卸载更新Python的第三方库都是依靠这个命令的,即使我们是使用pycharm来管理我们的第三方库,本质上还是通过pip来实现第三方库的安装卸载更新的。因此,对于一些在使用pip时出现的报错,进行一些经验的总结就很有必要了。安装第三方库时......
  • Python爬虫(二):写一个爬取壁纸网站图片的爬虫(图片下载,词频统计,思路)
    好家伙,写爬虫 代码: importrequestsimportreimportosfromcollectionsimportCounterimportxlwt#创建Excel文件workbook=xlwt.Workbook(encoding='utf-8')worksheet=workbook.add_sheet('url_list')#将数据写入Excel文件worksheet.write(0,0,&......
  • python+allure报告内容+发送钉钉消息
    一、钉钉配置获取1.点击钉钉左上角"设置" 2.找到机器人管理,点击“前往设置”,选择自定义机器人 3.设置名称和群,安全设置可不加,保存url后续接口请求需要用到 4.三种安全设置 二、pyhon脚本注:修改机器人URL和报告路径后即可使用,转载!#coding=gbkimportcsvimportj......
  • Python中的DYNAMIXEL快速入门指南
    原文链接:https://www.youtube.com/watch?v=LAizFTTdL8o hisvideowillbecoveringtherequiredcomponentsandhardware&softwaresetup,andfinallyruntheDYNAMIXELinPythonwithDYNAMIXELSDKwithinjustafewMINUTES. 本视频将涵盖所需的组件和硬件、软......
  • python 日志使用
    python日志使用日志基础教程日志是对软件执行时所发生事件的一种追踪方式。软件开发人员对他们的代码添加日志调用,借此来指示某事件的发生。一个事件通过一些包含变量数据的描述信息来描述(比如:每个事件发生时的数据都是不同的)。开发者还会区分事件的重要性,重要性也被称为等级......
  • python 类鸟群Boids
    importsys,argparseimportmathimportnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.animationasanimationfromscipy.spatial.distanceimportsquareform,pdist,cdist#计算点之间的距离fromnumpy.linalgimportnormfrommatplotlib.colors......