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 相关文章推荐
python3.3教程之模拟百度登陆代码分享
Jan 16 Python
使用Python的Twisted框架编写简单的网络客户端
Apr 16 Python
Python中List.count()方法的使用教程
May 20 Python
如何在Python中编写并发程序
Feb 27 Python
python 创建弹出式菜单的实现代码
Jul 11 Python
Python2与python3中 for 循环语句基础与实例分析
Nov 20 Python
Python切片工具pillow用法示例
Mar 30 Python
opencv python 基于KNN的手写体识别的实例
Aug 03 Python
python矩阵/字典实现最短路径算法
Jan 17 Python
Python实现把多维数组展开成DataFrame
Nov 30 Python
在TensorFlow中实现矩阵维度扩展
May 22 Python
Python3爬虫里关于Splash负载均衡配置详解
Jul 10 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
在PHP中实现Javascript的escape()函数代码
2010/08/08 PHP
php判断终端是手机还是电脑访问网站的思路及代码
2013/04/24 PHP
解析CI即CodeIgniter框架在Nginx下的重写规则
2013/06/03 PHP
PHP 实现 JSON 数据的编码和解码操作详解
2020/04/22 PHP
解决表单中第一个非隐藏的元素获得焦点的一个方案
2009/10/26 Javascript
使用JavaScript构建JSON格式字符串实现步骤
2013/03/22 Javascript
ExtJS的拖拽效果示例
2013/12/09 Javascript
基于jQuery实现响应式圆形图片轮播特效
2015/11/25 Javascript
jQuery深拷贝Json对象简单示例
2016/07/06 Javascript
Vue动态组件实例解析
2017/08/20 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
JS异步执行结果获取的3种解决方式
2019/02/19 Javascript
qrcode生成二维码微信长按无法识别问题的解决
2019/04/04 Javascript
js中offset,client , scroll 三大元素知识点总结
2019/09/11 Javascript
vuejs+element UI table表格中实现禁用部分复选框的方法
2019/09/20 Javascript
微信小程序使用自定义组件导航实现当前页面高亮
2020/01/02 Javascript
详解Vue3中对VDOM的改进
2020/04/23 Javascript
5个你不知道的JavaScript字符串处理库(小结)
2020/06/01 Javascript
详解Vue的七种传值方式
2021/02/08 Vue.js
python实现的简单FTP上传下载文件实例
2015/06/30 Python
python中的字典使用分享
2016/07/31 Python
Python面向对象编程基础解析(二)
2017/10/26 Python
使用python实现微信小程序自动签到功能
2020/04/27 Python
Html5新标签datalist实现输入框与后台数据库数据的动态匹配
2017/05/18 HTML / CSS
shell程序中如何注释
2012/02/17 面试题
JAVA招聘远程笔试题
2015/07/23 面试题
好的演讲稿开场白
2013/12/30 职场文书
幼儿园教师辞职信
2014/01/18 职场文书
cf战队收人广告词
2014/03/14 职场文书
科长竞争上岗演讲稿
2014/05/12 职场文书
珍惜资源保护环境的建议书
2014/05/14 职场文书
中秋节祝酒词
2015/08/12 职场文书
公司中层管理培训心得体会
2016/01/11 职场文书
Python中rapidjson参数校验实现
2021/07/25 Python
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android
java获取一个文本文件的编码(格式)信息
2022/09/23 Java/Android