python支持复数以及相关的运算吗_Python: 复数的数学运算

写的最新的网络认证方案代码遇到了一个难题,唯一的解决办法就是使用复数空间,需要使用复数来执行一些计算操作。

复数可以用使用函数complex(real, imag) 或者是带有后缀j 的浮点数来指定。

比如:

>>> a = complex(2, 4)

>>> b = 3 - 5j

>>> a

(2+4j)

>>> b

(3-5j)

对应的实部、虚部和共轭复数可以很容易的获取。就像下面这样:

>>> a.real

2.0

>>> a.imag

4.0

>>> a.conjugate()

(2-4j)

另外,所有常见的数学运算都可以工作:

>>> a + b

(5-1j)

>>> a * b

(26+2j)

>>> a / b

(-0.4117647058823529+0.6470588235294118j)

>>> abs(a)

4.47213595499958

如果要执行其他的复数函数比如正弦、余弦或平方根,使用cmath 模块:

>>> import cmath

>>> cmath.sin(a)

(24.83130584894638-11.356612711218174j)

>>> cmath.cos(a)

(-11.36423470640106-24.814651485634187j)

>>> cmath.exp(a)

(-4.829809383269385-5.5920560936409816j)

Python 中大部分与数学相关的模块都能处理复数。比如如果你使用numpy ,可以很容易的构造一个复数数组并在这个数组上执行各种操作:

>>> import numpy as np

>>> a = np.array([2+3j, 4+5j, 6-7j, 8+9j])

>>> a

array([ 2.+3.j, 4.+5.j, 6.-7.j, 8.+9.j])

>>> a + 2

array([ 4.+3.j, 6.+5.j, 8.-7.j, 10.+9.j])

>>> np.sin(a)

array([ 9.15449915 -4.16890696j, -56.16227422 -48.50245524j,

-153.20827755-526.47684926j, 4008.42651446-589.49948373j])

Python 的标准数学函数确实情况下并不能产生复数值,因此你的代码中不可能会

出现复数返回值。比如:

>>> import math

>>> math.sqrt(-1)

Traceback (most recent call last):File "", line 1, in ValueError: math domain error

如果你想生成一个复数返回结果,你必须显示的使用cmath 模块,或者在某个支

持复数的库中声明复数类型的使用。比如:

>>> import cmath

>>> cmath.sqrt(-1)

1j

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

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

相关文章

分页查询的实现(struts2+jsp+jstl+el)

文章目录MySQL的分页查询语句如何设置《上一页》和《下一页》的有效性呢?示例代码MySQL的分页查询语句 使用 MySQL 的分页查询语句 select * from project limit 5,5,打开表 project,获取全部记录,只要第 5 条记录后的 5 条记录&…

junit 测试执行顺序_JUnit 5中的测试执行顺序

junit 测试执行顺序一般实践认为,自动化测试应能够独立运行且无特定顺序,并且测试结果不应依赖于先前测试的结果。 但是在某些情况下,可以证明特定的测试执行顺序是正确的,尤其是在集成或端到端测试中。 默认情况下,在…

python的起源和发展_Python入门第一课——Python的起源、发展与前景!

我们在做任何一件事情之前,我们都会通过各种渠道去搜集事情的信息,了解事情的来龙去脉,学习一门编程语言也是如此,只有知根知底,我们才能有明确的方向和目标,以及底气去完成这件事情,今天我带大…

MySQL分页查询语句

单表分页查询语句: select * from tbl_name limit start_index, rows_per_page;start_index:每页数据的起始行的索引值,行的索引值从 0 开始 rows_per_page:每页显示的行数 page_num:查询的页码 关系式&a…

spring依赖注入_Spring依赖注入

spring依赖注入介绍: 在设计良好的Java应用程序中,这些类应尽可能独立。 这样的设计提高了组件的可重用性。 它还使对各个组件进行单元测试变得更加容易。 依赖注入的概念促进了Java对象之间的松散耦合。 在本教程中,我们将讨论Spring框架中…

excel 时间戳_我没有Excel基础,可以学Power BI吗

当然可以!没有Excel基础一样可以熟练掌握Power BI !Excel基础可以略微影响Power BI的上手速度,却不能决定最终对Power BI的运用能力。如果有Excel基础学习Power BI在最初阶段会更快,但经过实践证明,Excel基础对于PBI的学习进度影响…

Windows下查看wifi密码的命令

netsh wlan show profiles namewifi名称 keyclear

lemon geci_创建一个Java :: Geci生成器

lemon geci几天前,我写了有关Java :: Geci架构,代码生成原理以及生成Java源代码的可能不同方式的文章。 在本文中,我将讨论在Java :: Geci中创建生成器有多么简单。 您好,Wold生成器 HelloWorld1 最简单的生成器是Hello, World…

安卓 图像清晰度识别_OCR文字识别的功能及注意事项

首先OCR文字识别是指电子设备检查纸上打印的字符,然后用OCR文字识别技术翻译成计算机文字的过程;就是对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。那么在日常生活中有很多公司有文字识别这方面需求…

薪资/薪水/金额的数据类型

MySQL 数据库中,金额字段使用的数据类型和长度建议为:decimal(11,2) 而对应的实体类的成员变量的数据类型建议为:BigDecimal

java中list去除空值_Java –从列表中删除所有空值

java中list去除空值介绍: 在本文中,我们将学习如何使用普通的Java,Java 8 lambda表达式和某些第三方库从Java 列表中删除空值 。 所以,让我们开始吧! 从Java中的 让我们探索从Java 列表中删除null的不同方法&#xf…

URI is not registered (Settings | Languages Frameworks | Schemas and DTDs)

参考: https://www.cnblogs.com/ttflove/p/6341469.html https://blog.csdn.net/c_learner_/article/details/107228678

无法识别的属性“targetframework”。请注意属性名称区分大小写。_神奇!你思考过计算机是怎么识别玻璃和透明物体的吗?...

真实场景中的镜面/玻璃检测和语义分割Charmve | English | Chinesehttps://github.com/Charmve/Mirror-Glass-Detection在这个项目中,我正在学习反射镜和玻璃检测/分段技术。镜子是反射表面,可以反射前面的场景,而玻璃是透明表面,…

Java中的out.write()和out.print()的区别

out 就是 PrintWriter 对象。 out.print() 有处理空值,如果传入的字符串为 null,则会转换为"null"字符串,print() 后续还是调用的 write() 方法,write() 传入的字符串不能为空。这个可以通过 PrintWriter 的源码中看到…

python if else用法_python列表推导式中使用if-else

今天在处理自动化邮件数据时碰到数据行中包含字符串后,从hive中拿到的整数型数据自动转化成了浮点数,严重影响美观性。因此想到了用列表推导式来做转化,将其中的数字型数据全部转化为整型,而字符型数据保留原样。 列表推导式总共有…

java使用:: 表达式_Java 12:开关表达式

java使用:: 表达式在Java 12中,对switch语句进行了增强,以便可以将其用作表达式。 现在也可以在一种情况下打开多个常量,从而使代码更简洁易读。 这些增强功能是一种预览语言功能 ,这意味着必须使用--enable-preview标志在Java编译…

jsp中request.getAttributeNames()报红

缺少 servlet-api 依赖&#xff1a; <dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version></dependency>

fluent瞬态_Java中的瞬态关键字及其使用

fluent瞬态最近&#xff0c;我在一个朋友的一个研究项目中遇到了一个十字架&#xff0c;他们正在学习Java编程的基础知识&#xff0c;其中一些被遗忘的敏感信息打印在文本文件中&#xff0c;并记住了Java中的瞬时关键字。 Java中的瞬时关键字在安全性方面起着重要作用&#xf…

jsp中out.println()报红

需要引入 jsp-api&#xff1a; <dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.2.1-b03</version> </dependency>

graphql 有必要吗_您准备好观看GraphQL了吗?

graphql 有必要吗在上一篇文章中&#xff0c;我们讨论了GraphQL与REST相比的优势。 在本文中&#xff0c;我们将看到GraphQL的实际应用。 我创建了一个示例应用程序来展示REST和GraphQL之间的差异。 首先&#xff0c;我们将看到简单产品细节端点的REST实现。 我已经使用Spring …