python numpy逆_Python使用numpy计算矩阵特征值、特征向量与逆矩阵

原标题:Python使用numpy计算矩阵特征值、特征向量与逆矩阵

Python扩展库numpy.linalg的eig()函数可以用来计算矩阵的特征值与特征向量,而numpy.linalg.inv()函数用来计算可逆矩阵的逆矩阵。

>>> importnumpy as np

>>> x = np.matrix([[1,2,3], [4,5,6], [7,8,9]])

# 计算矩阵特征值与特征向量

>>> e, v = np.linalg.eig(x)

# 根据特征值和特征向量得到原矩阵

>>> y = v * np.diag(e) * np.linalg.inv(v)

>>> y

matrix([[ 1., 2., 3.],

[ 4., 5., 6.],

[ 7., 8., 9.]])

--------我是分割线----------

-------我是分割线-----------

新书《Python程序设计开发宝典》封面与目录,近日即将全面上架

d8c6f3158cb7427e823a1cdf757dbcba_th.png

第1章 管中窥豹:Python概述 14

1.1 Python是这样一种语言 14

1.2 Python版本之争 14

1.3 Python编程规范与代码优化建议 15

1.4 Python虚拟开发环境的搭建 17

1.5 Eclipse+PyDev环境搭建和使用 17

1.6 安装扩展库的几种方法 19

1.7 标准库与扩展库中对象的导入与使用 20

1.7.1 import 模块名 [as 别名] 20

1.7.2 from 模块名 import 对象名[ as 别名] 21

1.7.3 from 模块名 import * 21

1.7.4 模块导入时的搜索路径 22

1.8 编写与发布自己的包 23

1.9 Python程序伪编译与打包 25

1.10 从命令行参数和配置文件获取信息 27

第2章 万丈高楼平地起:运算符、表达式与内置对象 29

2.1 Python常用内置对象 29

2.1.1 常量与变量 30

2.1.2 数字 31

2.1.3 字符串 34

2.1.4 列表、元组、字典、集合 35

2.2 Python运算符与表达式 37

2.2.1 算术运算符 38

2.2.2 关系运算符 39

2.2.3 成员测试运算符in与同一性测试运算符is 40

2.2.4 位运算符与集合运算符 41

2.2.5 逻辑运算符 41

2.2.6 矩阵乘法运算符@ 42

2.2.7 补充说明 42

2.3 Python关键字简要说明 43

2.4 Python常用内置函数用法精要 44

2.4.1 类型转换与类型判断 47

2.4.2 最值与求和 51

2.4.3 基本输入输出 52

2.4.4 排序与逆序 55

2.4.5 枚举与迭代 56

2.4.6 map()、reduce()、filter() 57

2.4.7 range() 61

2.4.8 zip() 61

2.4.9 eval()、exec() 62

第3章 玄之又玄,众妙之门:详解Python序列结构 64

3.1 列表:打了激素的数组 64

3.1.1 列表创建与删除 65

3.1.2 列表元素访问 66

3.1.3 列表常用方法 67

3.1.4 列表对象支持的运算符 72

3.1.5 内置函数对列表的操作 74

3.1.6 使用列表模拟向量运算 75

3.1.7 列表推导式语法与应用案例 76

3.1.8 切片操作的强大功能 83

3.2 元组:轻量级列表 86

3.2.1 元组创建与元素访问 86

3.2.2 元组与列表的异同点 87

3.2.3 生成器推导式 88

3.3 字典:反映对应关系的映射类型 90

3.3.1 字典创建与删除 90

3.3.2 字典元素的访问 91

3.3.3 元素添加、修改与删除 92

3.3.4 标准库collections中与字典有关的类 93

3.4 集合:元素之间不允许重复 94

3.4.1 集合对象的创建与删除 95

3.4.2 集合操作与运算 95

3.4.3 不可变集合frozenset 97

3.4.4 集合应用案例 97

3.5 序列解包的多种形式和用法 100

3.6 标准库中的其他常用数据类型 102

3.6.1 枚举类型 102

3.6.2 数组类型 103

3.6.3 队列 103

3.6.4 具名元组 105

3.6.5 堆 106

第4章 反者,道之动:程序控制结构 108

4.1 条件表达式 108

4.2 选择结构 110

4.2.1 单分支选择结构 110

4.2.2 双分支选择结构 111

4.2.3 多分支选择结构 112

4.2.4 选择结构的嵌套 113

4.2.5 构建跳转表实现多分支选择结构 114

4.3 循环结构 114

4.3.1 for循环与while循环 115

4.3.2 break与continue语句 116

4.3.3 循环代码优化技巧 117

4.4 精彩案例赏析 118

第5章 代码复用技术(一):函数 126

5.1 函数定义与使用 126

5.1.1 基本语法 126

5.1.2 函数嵌套定义、可调用对象与修饰器 128

5.1.3 函数对象成员的动态性 132

5.1.4 函数递归调用 132

5.2 函数参数 134

5.2.1 位置参数 135

5.2.2 默认值参数 135

5.2.3 关键参数 137

5.2.4 可变长度参数 137

5.2.5 强制函数的某些参数必须以关键参数形式进行传值 138

5.2.6 强制函数的所有参数必须以位置参数 139

5.2.7 传递参数时的序列解包 140

5.2.8 标注函数参数与返回值类型 142

5.3 变量作用域 142

5.3.1 全局变量与局部变量 142

5.3.2 nonlocal变量 145

5.4 lambda表达式 146

5.5 生成器函数设计要点 148

5.6 偏函数与函数柯里化 150

5.7 单分发器与泛型函数 152

5.8 协程函数 153

5.9 注册程序退出时必须执行的函数 155

5.10 回调函数原理与实现 156

5.11 精彩案例赏析 156

第6章 代码复用技术(二):面向对象程序设计 184

6.1 类的定义与使用 184

6.1.1 基本语法 184

6.1.2 type类 185

6.1.3 定义带修饰器的类 186

6.2 数据成员与成员方法 187

6.2.1 私有成员与公有成员 187

6.2.2 数据成员 189

6.2.3 成员方法、类方法、静态方法、抽象方法 190

6.2.4 属性 192

6.2.5 类与对象的动态性、混入机制 194

6.3 继承、多态、依赖注入 196

6.3.1 继承 196

6.3.2 多态 198

6.3.3 依赖注入技术的不同实现方法 199

6.4 特殊方法与运算符重载 202

6.5 精彩案例赏析 204

6.5.1 自定义队列 204

6.5.2 自定义栈 208

6.5.3 自定义集合 210

6.5.4 自定义数组 216

6.5.5 自定义双链表 221

6.5.6 自定义常量类 223

6.5.7 自定义不允许修改值的字典 224

6.5.8 自定义支持with关键字的类 225

第7章 文本处理(一):字符串 226

7.1 字符串编码格式简介 227

7.2 转义字符与原始字符串 228

7.3 字符串格式化 229

7.3.1 使用%符号进行格式 229

7.3.2 使用format()方法进行字符串格式化 231

7.3.3 格式化的字符串常量 232

7.3.4 使用Template模板进行格式化 232

7.4 字符串常用操作 233

7.4.1 find()、rfind()、index()、rindex()、count() 233

7.4.2 split()、rsplit()、partition()、rpartition() 235

7.4.3 join() 236

7.4.4 lower()、upper()、capitalize()、title()、swapcase() 237

7.4.5 replace()、maketrans()、translate() 238

7.4.6 strip()、rstrip()、lstrip() 239

7.4.7 startswith()、endswith() 239

7.4.8 isalnum()、isalpha()、isdigit()、isdecimal()、isnumeric()、isspace()、isupper()、islower() 240

7.4.9 center()、ljust()、rjust()、zfill() 241

7.4.10 字符串对象支持的运算符 241

7.4.11 适用于字符串对象的内置函数 243

7.4.12 字符串对象的切片操作 245

7.5 其他有关模块 245

7.5.1 textwrap模块 245

7.5.2 zlib模块提供的压缩功能 248

7.6 字符串常量 249

7.7 可变字符串 250

7.8 中英文分词 251

7.9 汉字到拼音的转换 252

7.10 精彩案例赏析 253

第8章 文本处理(二):正则表达式 256

8.1 正则表达式语法 256

8.1.1 正则表达式基本语法 256

8.1.2 正则表达式扩展语法 257

8.1.3 正则表达式锦集 257

8.2 直接使用正则表达式模块re处理字符串 259

8.3 使用正则表达式对象处理字符串 262

8.4 match对象 264

8.5 精彩案例赏析 267

第9章 数据永久化:文件内容操作 273

9.1 文件操作基本知识 274

9.1.1 内置函数open() 274

9.1.2 文件对象属性与常用方法 276

9.1.3 上下文管理语句with 277

9.2 文本文件内容操作案例精选 277

9.3 二进制文件操作案例精选 282

9.3.1 使用pickle模块读写二进制文件 282

9.3.2 使用struct模块读写二进制文件 284

9.3.3 使用shelve模块操作二进制文件 285

9.3.4 使用marshal模块操作二进制文件 285

9.3.5 其他常见类型二进制文件操作案例 286

第10章 文件与文件夹操作 297

10.1 os模块 297

10.2 os.path模块 300

10.3 shutil模块 301

10.4 其他常用模块 303

10.4.1 glob模块 303

10.4.2 fnmatch模块 303

10.5 精彩案例赏析 304

第11章 代码质量保障:异常处理结构、程序调试与测试 309

11.1 异常处理结构 309

11.1.2 Python内置异常类层次结构 310

11.1.3 异常处理结构 311

11.1.4 断言与上下文管理语句 317

11.2 文档测试doctest 318

11.3 单元测试unittest 320

11.4 覆盖测试 323

11.5 软件性能测试 324

11.6 代码调试 326

11.6.1 使用IDLE调试 326

11.6.2 使用Eclipse+PyDev进行代码调试 329

11.6.3 使用pdb调试 329

第12章 多任务与并行处理:线程、进程、协程、分布式、GPU加速 334

12.1 多线程编程 334

12.1.1 线程概念与标准库threading 335

12.1.2 线程对象 336

12.1.3 线程调度 339

12.1.4 Lock/RLock对象 341

12.1.5 Condition对象 343

12.1.6 Queue对象 345

12.1.7 Event对象 348

12.1.8 Semaphore与BoundedSemaphore 349

12.1.9 Barrier对象 350

12.2 多进程编程 351

12.2.1 进程创建与管理 352

12.2.2 进程同步技术 352

12.2.3 Pool对象 353

12.2.4 Manager对象 358

12.2.5 Listener与Client对象 361

12.2.6 进程间数据交换与共享 362

12.2.7 标准库subprocess 365

12.3 协程 365

12.4 concurrent.futures模块提供的并发执行功能 368

12.5 pySpark并行计算与分布式计算框架 369

12.6 GPU编程 376

12.6.1 使用pycuda实现GPU加速 376

12.6.2 使用pyopencl实现GPU加速 378

12.6.3 使用tensorflow实现GPU加速 379

第13章 互通互联:asyncio提供的网络通信功能 381

13.1 Transport类与Protocol类 381

13.2 StreamReader与StreamWriter 386

附录:精彩在继续 390

附录1:GUI开发 390

附录2:SQLite数据库操作 393

附录3:计算机图形学编程 394

附录4:图像编程 397

附录5:数据分析、机器学习、科学计算可视化 400

附录6:密码学编程 400

附录7:系统运维 401

附录8:Windows系统编程 402

附录9:软件分析与逆向工程 404

责任编辑:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/556470.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mysql索引数据结构有多个选择,为什么一定要是B+树呢?_面试 (MySQL 索引为啥要选择 B+ 树)

Mysql索引数据结构 下面列举了常见的数据结构 二叉树红黑树Hash表B-Tree(B树) Select * from t where t.col5我们在执行一条查询的Sql语句时候,在数据量比较大又不加索引的情况下,逐行查询并进行比对,每次需要从磁盘…

一篇搞懂mysql中的索引(大白话版)

容易来说,索引的出现其实就是为了提升数据查询的效率,就像书的目录一样。一本 500 页的书,如果你想快速找到其中的某一个知识点,在不借助目录的情况下,那我估计你可得找一会儿。同样,对于数据库的表而言&am…

sqlite插入时间字段_sqlite 获取最后插入id

(点击上方公众号,可快速关注)SQLite数据库中的表均有一个特殊的rowid字段,它是一个不重复的64位有符号整数,默认起始值为1。rowid别名为oid或_rowid_,但在创建表的SQL声明语句中只能使用rowid作为关键字。如果在创建表的时候设置了…

Dubbo与SpringCloud的架构与区别

Dubbo与SpringCloud的架构与区别 Dubbo架构图 SpringCloud 架构图 总结 框架DubboSpringCloud服务注册中心ZookeeperSpring Cloud Netfix Eureka(nacos)服务调用方式RPCREST API服务监控Dubbo-monitorSpring Boot Admin熔断器不完善Spring Cloud Netflix Hystrix服务网关无Sp…

matlab求微分数值,用MATLAB语言求微积分方程的数值解.(xd^2y)/dx^2-5dy/dx+y=0y(0)=0y'(0)=0...

function dymyfun03(x,y)dyzeros(3,1) %初始化变量dydy(1)y(2); %dy(1)表示y的一阶导数,其等于y的第二列值dy(2)5/x*y(3)-y(1); %dy(2)表示y的二阶导数%ex0808 用ode23 ode45 ode113解多阶微分方程clear,clc[x23,y23]ode23(myfun03,[1,10],[1 10 30]);[x45,y45]ode45(myfun03,[…

springboot 接口404_资深架构带你学习Springboot集成普罗米修斯

这篇文章主要介绍了springboot集成普罗米修斯(Prometheus)的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧!Prometheus 是一套开源的系统监控报警框…

http常见的状态码,400,401,403状态码分别代表什么?

2XX 成功 200 OK,表示从客户端发来的请求在服务器端被正确处理 204 No content,表示请求成功,但响应报文不含实体的主体部分 206 Partial Content,进行范围请求 3XX 重定向 301 moved permanently,永久性重定…

mysql left 数学原理,MySQL全面瓦解21(番外):一次深夜优化亿级数据分页的奇妙经历...

背景1月22号晚上10点半,下班后愉快的坐在在回家的地铁上,内心想着周末的生活怎么安排。sql忽然电话响了起来,一看是咱们的一个开发同窗,顿时紧张了起来,本周的版本已经发布过了,这时候打电话通常来讲是线上…

java8中的map与flatmap区别

map:只能返回一个值 flatmap:返回多个值 new ArrayList().stream().map(x -> x);//返回一个 new ArrayList().stream().flatMap(x -> Arrays.asList(x.split(" ")).stream());//返回一个流,也就是多个值 看API声明可以发现,flatmap接受的参数是流…

shell 文件路径有空格_Python学习第57课-shell入门之基本简单命令(一)

【每天几分钟,从零入门python编程的世界!】我们现在学习shell操作,对于shell的命令,我们就把它看做新的语言,shell语言,它是不同于其他编程语言的。就像我们学习一门编程语言,都是从打出“hell …

比较Spring AOP和AspectJ

1. 介绍 当前有多个可用的AOP库,这些库必须能够回答许多问题: 它与我现有的或新的应用程序兼容吗?在哪里可以实施AOP?它与我的应用程序集成的速度有多快?性能开销是多少? 在本文中,我们将着眼…

hough变换直线检测_python+opencv实现霍夫变换检测直线

作者:Ruff_XY功能:创建一个滑动条来控制检测直线的长度阈值,即大于该阈值的检测出来,小于该阈值的忽略 注意:这里用的函数是HoughLinesP而不是HoughLines,因为HoughLinesP直接给出了直线的断点,…

php文件防删改,PHP实现增删改查以及防SQL注入

最近项目调研时,需要在集成板子上做个配置的网页,板子上装的是linux系统,配置信息在一个SQLite数据库中,经过讨论大家决定用PHP做这个网页。由于项目组没一个会PHP的,所以安排我调研下写个Demo,经过几天的研…

c# python 相互调用_【GhPython】Python如何使用“委托”和lambda表达式

【版权声明】| 作者:月之眼| 首发于大水牛参数化设计平台| 如需转载请联系作者| 如果觉得文章不错,欢迎分享 函数作为参数传入 在python中函数是能作为参数输入函数的。这个有点类似于C#中的委托,将一个函数封装到一个委托对象里,…

chimerge算法matlab实现,有监督的卡方分箱算法

实现代码import numpy as npimport pandas as pdfrom collections import Counterdef chimerge(data, attr, label, max_intervals):distinct_vals sorted(set(data[attr])) # Sort the distinct valueslabels sorted(set(data[label])) # Get all possible labelsempty_coun…

金士顿u盘真假软件_简洁轻巧 金士顿DT80 Type-C高速闪存盘评测

从都市的高端会议到普通的日常娱乐,USB高速闪存应用于我们生产生活的方方面面。它小巧便携,稳定可靠的特点吸引了无数人去使用,同时为我们提供了诸多便利。闪存盘也就是日常生活中经常提到的U盘。大多数人对于U盘的印象是老式的USB Micro接口…

php阴影效果,如何使用css3实现文字的单阴影效果和多重阴影效果(

使用css3实现文本阴影效果的原理实现阴影效果主要是用text-shadow属性,根据W3C标准,如果我们想要在IE下兼容CSS3的阴影属性可以使用ie.css3-htc,不过按照标准InternetExplorer9以及更早版本的浏览器暂时不支持text-shadow属性。最基本的语法为…

promise链式调用_这一次,彻底弄懂 Promise

Promise 必须为以下三种状态之一:等待态(Pending)、执行态(Fulfilled)和拒绝态(Rejected)。一旦Promise 被 resolve 或 reject,不能再迁移至其他任何状态(即状态 immutable)。基本过程:初始化 Promise 状态(pending)执行 then(..) 注册回调处…

visual studio 判断dropdownlist选的是什么_心理测试:五个小蓝人,你选哪个?测你是不是一个容易追求的人...

下面这张图片里,有五个小蓝人,你觉得自己会是里面的哪一个?A. 站在家里的窗户边B. 站在河边C. 坐在屋顶D. 站在树上E. 骑着鸟飞在空中测试结果选A的你容易追求指数20%。你是一个温柔细腻的人。在别人的眼里,你是一个很贴心的人。在…

java中为何输出框会无限输出,MyBatis启动时控制台无限输出日志的原因及解决办法...

你是否遇到过下面的情况,控制台无限的输出下面的日志:Logging initialized using ‘class org.apache.ibatis.logging.log4j.Log4jImpl adapter.Logging initialized using ‘class org.apache.ibatis.logging.log4j.Log4jImpl adapter.Logging initiali…