Python学习之路:NumPy初识
import numpy as np;
//一维NumPy数组
myArray = np.array([1,2,3,4]);
print(myArray);
[1 2 3 4]
//打印一维数组的形状
print(myArray.shape);
(4,)
//像普通的Python数组一样,NumPy数组的起始索引编号为0。
print(myArray[0]);
print(myArray[1]);
1
2
//像数组一样直接修改NumPy数组
myArray[0] = 0;
print(myArray[0]);
0
//创建全0或者全1的NumPy数组,默认为浮点数类型
zeroArray = np.zeros((5));
oneArray = np.ones((5));
print(zeroArray);
print(oneArray);
print(type(zeroArray[0]));
[0. 0. 0. 0. 0.]
[1. 1. 1. 1. 1.]
<class 'numpy.float64'>
//创建一个随机值数组
randomArr = np.random.random((5));
print(randomArr);
[0.93867242 0.21884978 0.29078814 0.90407659 0.3323175 ]
//NumPy创建二维数组
dzeroArray = np.zeros((5,4));
doneArray = np.ones((5,4));
print(dzeroArray);
print('----------------');
print(doneArray);
[[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]]
----------------
[[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]]
//二维数组依然可以使用一维数组的函数,例如:显示形状、修改元素
testArr = np.ones((5,4));
print(testArr);
print(testArr.shape);
testArr[0,0] = 5
print(testArr);
[[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]]
(5, 4)
[[5. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]]
//提取多维数组的行/列的方法
testArr = np.array([
[1,2],
[3,4]
]);
testArr2 = testArr[:,1]
print(testArr2)
[2 4]
//NumPy矩阵的加减乘除(性质是点运算)
a = np.array([[1.0, 2.0], [3.0, 4.0]])
b = np.array([[5.0, 6.0], [7.0, 8.0]])
sum = a + b
difference = a - b
product = a * b
quotient = a / b
print('sum = \n',sum);
print('difference = \n',difference);
print('product = \n',product);
print('quotient = \n',quotient);
sum =
[[ 6. 8.]
[10. 12.]]
difference =
[[-4. -4.]
[-4. -4.]]
product =
[[ 5. 12.]
[21. 32.]]
quotient =
[[0.2 0.33333333]
[0.42857143 0.5 ]]
//NumPy矩阵的矩阵乘法
realMul = np.dot(a,b);
print(realMul);
print('-----------')
realMul2 = a.dot(b);
print(a,'\n--------\n',b);
print('-----------');
print(realMul2);
[[19. 22.]
[43. 50.]]
-----------
[[1. 2.]
[3. 4.]]
--------
[[5. 6.]
[7. 8.]]
-----------
[[19. 22.]
[43. 50.]]
Python学习之路:NumPy初识的更多相关文章
- python学习之路-2 初识python数据类型
数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值范围为-2** ...
- Python学习之路-Day2-Python基础2
Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...
- Python学习之路-Day1-Python基础
学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...
- Python学习之路【第一篇】-Python简介和基础入门
1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...
- python学习之路-day2-pyth基础2
一. 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...
- Python学习之路-Day2-Python基础3
Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...
- python学习之路网络编程篇(第四篇)
python学习之路网络编程篇(第四篇) 内容待补充
- python 学习之路开始了
python 学习之路开始了.....记录点点滴滴....
- python学习之路,2018.8.9
python学习之路,2018.8.9, 学习是一个长期坚持的过程,加油吧,少年!
- Python学习之路——pycharm的第一个项目
Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...
随机推荐
- November 5th Week 45th Saturday 2016
The longest day has an end. 最难过的日子也会有尽头. No, no, no, I can't see the end of such days, of course, if ...
- D:\hunting2014\小题目\字符串倒序
#include<stdio.h>#include<string.h> char *revert(char *str){ char temp; char *p = str; c ...
- if 里面嵌套一个if&else (我自己又细分了别的条件,加了elif)
场景: 一个陌生人敲门..... gender = input("你是男的是女的?") if gender == "女": print("请进&quo ...
- 静默安装oracle后,启动oem报错,解决方法!
一.手工重建EM Oracle 的gridcontrol 由两部分组成:dbcontrol 和repository. 我们可以对某一部分进行操作,也可以同时进行操作. 这里先看一个因为修改hostna ...
- RabbitMQ 6种应用场景
http://www.rabbitmq.com/getstarted.html官网 最近业务需要使用Rabbitmq工作队列实现任务的负载分发 1.1.什么是RabbitMQ? RabbitMQ是实现 ...
- 全局唯一Id:雪花算法
雪花算法-snowflake 分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的. 有 ...
- 【转】 Android应用内多进程分析和研究
正常情况下,一个apk启动后只会运行在一个进程中,其进程名为AndroidManifest.xml文件中指定的应用包名,所有的基本组件都会在这个进程中运行.但是如果需要将某些组件(如Service.A ...
- Day6 重载构造
带参数方法 [1]无参数,无返回值 void 方法名(){方法体:} [2]无参数,有返回值 int 方法名(){方法体:} [3]有参数,无返回值 void 方法名(int num){方法体:} [ ...
- 解决nodejs运行程序卡死之后,程序后台运行的问题
查看node进程 ps aux | grep node 查出的结果如下 root 1660 0.0 1.5 885024 15892 tty1 Sl+ Mar11 0:00 node server.j ...
- AdminLTE前端模板
AdminLTE是一个Bootstrap框架模板,其功能组件并不比我直接提到的Metronic差. 第一次接触过AdminLTE是在学习Jeesite这个开源项目的时候.离现在已经有半年了. Admi ...