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


Posted in Python onApril 24, 2019

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

1、简介

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

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

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

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

2、多维数组——ndarray

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

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

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

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

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

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

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

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

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

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

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

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

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

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:ZhengzhengLiu

import 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,步长为1
np1 = np.arange(10)
print(np1)

#两个参数(起始值,终止值),区间左闭右开,默认步长为1
np2 = np.arange(2,10)
print(np2)

#三个参数(起始值,终止值,步长),区间左闭右开,步长为2
np3 = 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]]

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

#修改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] = 50
print(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基本操作说明

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

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

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

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

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

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

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

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

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

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

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

Python 相关文章推荐
python实现linux下使用xcopy的方法
Jun 28 Python
深入理解python中的浅拷贝和深拷贝
May 30 Python
深入浅析python中的多进程、多线程、协程
Jun 22 Python
windows下pycharm安装、创建文件、配置默认模板
Jul 31 Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
May 07 Python
使用Python画股票的K线图的方法步骤
Jun 28 Python
python实现网站用户名密码自动登录功能
Aug 09 Python
Python远程开发环境部署与调试过程图解
Dec 09 Python
python实现密度聚类(模板代码+sklearn代码)
Apr 27 Python
基于Python pyecharts实现多种图例代码解析
Aug 10 Python
python用分数表示矩阵的方法实例
Jan 11 Python
Python写情书? 10行代码展示如何把情书写在她的照片里
Apr 21 Python
基于python的ini配置文件操作工具类
Apr 24 #Python
python实现简单日期工具类
Apr 24 #Python
NumPy 基本切片和索引的具体使用方法
Apr 24 #Python
Python使用dict.fromkeys()快速生成一个字典示例
Apr 24 #Python
python3中property使用方法详解
Apr 23 #Python
详解爬虫被封的问题
Apr 23 #Python
Python3.5 Pandas模块缺失值处理和层次索引实例详解
Apr 23 #Python
You might like
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
2006/12/06 PHP
php轻松实现中英文混排字符串截取
2014/05/28 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
2018/02/19 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
JavaScript While 循环基础教程
2007/04/05 Javascript
JS声明变量背后的编译原理剖析
2012/12/28 Javascript
Javascript脚本实现静态网页加密实例代码
2013/11/05 Javascript
js弹窗返回值详解(window.open方式)
2014/01/11 Javascript
IE中getElementsByName()对有些元素无效的解决方案
2014/09/28 Javascript
javascript实现回到顶部特效
2015/05/06 Javascript
Javascript中Array用法实例分析
2015/06/13 Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
2015/11/29 Javascript
快速学习jQuery插件 Cookie插件使用方法
2015/12/01 Javascript
浅谈jQuery before和insertBefore的区别
2016/12/04 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
2017/06/17 Javascript
jQuery EasyUI 选项卡面板tabs的使用实例讲解
2017/12/25 jQuery
原生JS实现网页手机音乐播放器 歌词同步播放的示例
2018/02/02 Javascript
在ES5与ES6环境下处理函数默认参数的实现方法
2018/05/13 Javascript
vue-cli构建项目下使用微信分享功能
2018/05/28 Javascript
微信小程序合法域名配置方法
2019/05/06 Javascript
解决vue addRoutes不生效问题
2020/08/04 Javascript
Python 学习笔记
2008/12/27 Python
Python实现的拉格朗日插值法示例
2019/01/08 Python
Python中拆分字符串的操作方法
2019/07/23 Python
Python基于OpenCV实现人脸检测并保存
2019/07/23 Python
详解python os.path.exists判断文件或文件夹是否存在
2020/11/16 Python
浅谈CSS3 box-sizing 属性 有趣的盒模型
2019/04/02 HTML / CSS
H5最强接口之canvas实现动态图形功能
2019/05/31 HTML / CSS
科颜氏法国官网:Kiehl’s法国
2019/08/20 全球购物
测控技术自荐信
2014/06/05 职场文书
垃圾桶标语
2014/06/24 职场文书
导游词之上海东方明珠塔
2019/09/25 职场文书
Python基础详解之邮件处理
2021/04/28 Python
Pytorch中Softmax与LogSigmoid的对比分析
2021/06/05 Python
AngularJS实现多级下拉框
2022/03/25 Javascript
java实现面板之间切换功能
2022/06/10 Java/Android