首页 > 编程 > Python > 正文

Python3.5基础之NumPy模块的使用图文与实例详解

2019-11-25 12:59:48
字体:
来源:转载
供稿:网友

本文实例讲述了Python3.5基础之NumPy模块的使用。分享给大家供大家参考,具体如下:

1、简介





2、多维数组――ndarray















#!/usr/bin/env python# -*- coding:utf-8 -*-# Author:ZhengzhengLiuimport numpy as np#1.创建ndarray#创建一维数组n1 = np.array([1,2,3,4])print(n1)#属性--ndim:维度;dtype:元素类型;shape:数组形状;# size:数组元素总个数,shape值相乘得到print("n1维度:",n1.ndim)print("n1元素类型:",n1.dtype)print("n1数组形状:",n1.shape)print("n1数组元素总个数:",n1.size)#创建二维数组n2 = np.array([  [1,2,3,4],  [5,6,7,8]])print(n2)print("n2维度:",n2.ndim)print("n2元素类型:",n2.dtype)#创建三维数组n3 = np.array([  [    [1,2,3,4],    [5,6,7,8]  ],  [    [10,20,30,40],    [50,60,70,80]  ]])print(n3)print("n3数组形状:",n3.shape)print("n3数组元素总个数:",n3.size)#2.通过函数创建数组z = np.zeros((3,2))   #创建指定形状的数组,数值由零填充print(z)print(z.dtype)o = np.ones((2,4))   #创建指定形状的数组,数值由1填充print(o)e = np.empty((2,3,2))  #创建指定形状的数组,数值由未初始化的垃圾值填充print(e)#3.通过函数计算的方式去创建数组#一个参数,区间左闭右开,默认起始值为0,步长为1np1 = np.arange(10)print(np1)#两个参数(起始值,终止值),区间左闭右开,默认步长为1np2 = np.arange(2,10)print(np2)#三个参数(起始值,终止值,步长),区间左闭右开,步长为2np3 = np.arange(2,10,2)print(np3)#倒序创建数组元素np4 = np.arange(10,2,-1)print(np4)#全闭区间,参数(起始值,终止值,元素个数),等差数列np5 = np.linspace(0,10,5)print(np5)#全闭区间,以10为底数参数为指数(起始值,终止值,元素个数),等比数列np6 = np.logspace(0,2,5)print(np6)#生成随机数的数组np7 = np.random.random((2,3))print(np7)

运行结果:

[1 2 3 4]
n1维度: 1
n1元素类型: int32
n1数组形状: (4,)
n1数组元素总个数: 4
[[1 2 3 4]
 [5 6 7 8]]
n2维度: 2
n2元素类型: int32
[[[ 1  2  3  4]
  [ 5  6  7  8]]

 [[10 20 30 40]
  [50 60 70 80]]]
n3数组形状: (2, 2, 4)
n3数组元素总个数: 16
[[ 0.  0.]
 [ 0.  0.]
 [ 0.  0.]]
float64
[[ 1.  1.  1.  1.]
 [ 1.  1.  1.  1.]]
[[[  1.02548961e-305   5.40165714e-067]
  [  1.05952696e-153   9.69380992e+141]
  [  2.17151199e+214   4.34975848e-114]]

 [[  2.08064175e-115   1.91431714e+227]
  [  6.42897811e-109   1.26088822e+232]
  [  9.51634286e-114   5.45764552e-306]]]
[0 1 2 3 4 5 6 7 8 9]
[2 3 4 5 6 7 8 9]
[2 4 6 8]
[10  9  8  7  6  5  4  3]
[  0.    2.5   5.    7.5  10. ]
[   1.            3.16227766   10.           31.6227766   100.        ]
[[ 0.55980469  0.99477652  0.82310732]
 [ 0.97239333  0.1409895   0.57213264]]

#修改ndarray形状np8 = np.arange(0,20,2)print(np8)print(np8.size)np9 = np8.reshape(2,5)print(np9)print(np9.size)#reshape函数是对被修改数组的一个拷贝,共享同一内存,# 修改其中一个数组会影响里一个np9[1][2] = 50print(np8)print(np9)# -1表示第二维自动根据元素个数计算np10 = np8.reshape(5,-1)print(np10)#shape直接修改原来数组的形状np8.shape=(2,-1)print(np8)

运行结果:

[ 0  2  4  6  8 10 12 14 16 18]
10
[[ 0  2  4  6  8]
 [10 12 14 16 18]]
10
[ 0  2  4  6  8 10 12 50 16 18]
[[ 0  2  4  6  8]
 [10 12 50 16 18]]
[[ 0  2]
 [ 4  6]
 [ 8 10]
 [12 50]
 [16 18]]
[[ 0  2  4  6  8]
 [10 12 50 16 18]]

Numpy基本操作说明










更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表