Python中的复数

复数一般表示为a+bi(a、b为有理数),在python中i被挪着它用,虚数单位是不区分大小写的J。


(笔记模板由python脚本于2023年12月19日 18:58:39创建,本篇笔记适合认识复数的coder翻阅)


【学习的细节是欢悦的历程】


  自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
            —— 华罗庚


等风来,不如追风去……


复数a+bi(a、b为有理数)
Python中的复数
(在python中虚数单位是大或小写的J)


本文质量分:

97

本文地址: https://blog.csdn.net/m0_57158496/article/details/135091741

CSDN质量分查询入口:http://www.csdn.net/qc


目 录

  • ◆ Python中的复数
    • 1、缘起
    • 2、复数在python中的样子
      • 2.1 用虚数单位j书写
      • 2.2 complex函数构造
      • 2.3 复数对象的方法
    • 3、复数的简单运算
      • 3.1 加减乘除运算
      • 3.2 复数的 == 运算
    • 4、Python中的cmath模块
    • 5、参阅文章



◆ Python中的复数


1、缘起



  这个问题,激起了我对复数的兴趣,更想了解她在Python中的种种。🤪

  我搜索学习了复数的相关数学知识点,拜读过csdn大佬关于复数在python的文章,摘珠成串,以识备查,凝结此文。


复数定义

  • 一般地

复数可以分为两类数:实数、虚数

实数、虚数都是复数;不存在既是实数,又是虚数的复数;任何一个复数,不属于实数就属于虚数,二者必居其一。

我们把形如 z = a +bi (a、b均为实数)的数称为复数。

其中,a 称为实部,b 称为虚部,i 称为虚数单位,满足 i2 = −1。

当 z 的虚部 b=0 时,则 z 为实数;

当 z 的虚部 b≠0 时,实部 a=0 时,常称 z 为纯虚数。


- `百科词条`   [复数](https://baike.baidu.com/item/%E5%A4%8D%E6%95%B0/254365?fromModule=search_box&rt-err=919&rt-msg=%22.rt-view%22%20not%20found%20in%20retrieved%20HTML%28from%20%2Fitem%2F%25E5%25A4%258D%25E6%2595%25B0%3Ftimestamp%3D1702008869939%26fromModule%3Dsearch_box%26rt%3Dtrue%20%29abort%20rendering...×tamp=1702008869939) [虚数单位](https://baike.baidu.com/item/%E8%99%9A%E6%95%B0%E5%8D%95%E4%BD%8D/6803458) (点击蓝色文字跳转查阅)
  • Python中

1、虚数不能单独存在,它们总是和一个值为 0.0 的实数部分一起构成一个复数;
2、复数由实数部分和虚数部分构成;
3、表示复数的语法:real + (image)j;
4、实数部分和虚数部分都是浮点数;
5、虚数部分必须有后缀j或J。

  复数(Complex)是Python的内置类型,直接书写即可。换句话说,Python 语言本身就支持复数,而不依赖于标准库或者第三方库。

  复数由实部(real)和虚部(imag)构成,在Python中,复数的虚部以j或者J作为后缀,具体格式为:a + bj,a表示实部,b表示虚部。


  Python中虚部的单位是j而不是i,且反常地不分大小,大小写字母同质。



回页目录


2、复数在python中的样子


  复数在python中是 (a+bj) 或者 (a+bJ) 的形式,把虚数单位常用的字母i换成了j,且无一例外地不区分大小写字母,大小写效果、作用等同。要知道,python中一般都是“大小写字母敏感”的,大小写字母视为不同的对象。


2.1 用虚数单位j书写

  • 命令行试炼
    在这里插入图片描述
      如图所见,大小写字母j构造复数是一样的。

>>>
>>>
>>> z = 4+5j
>>> z2 = 8-4J
>>> z, z2
((4+5j), (8-4j))
>>> type(z), type(z2)
(<class 'complex'>, <class 'complex'>)
>>>


2.2 complex函数构造

  • 命令行试炼
    在这里插入图片描述
      如截屏图片,用python内建函数complex,也是可以在python中轻松构建复数对象的。

>>>
>>> z3 = complex(6, 9)
>>> z4 = complex(8, -2)
>>> z3,  z4
((6+9j), (8-2j))
>>> type(z3), type(z4)
(<class 'complex'>, <class 'complex'>)
>>>
>>>


2.3 复数对象的方法

  • 命令行试炼
    在这里插入图片描述
      如图,复数对象的real属性可以获取复数的实部,imag属性可以得到复数对象的虚部。这两个属性可以方便地支持我们在python中对复数对象进行想要的操作。

>>>
>>> z.real
4.0
>>> z.imag
5.0
>>> z
(4+5j)
>>> z3
(6+9j)
>>> z3.imag
9.0
>>> z3.real
6.0



回页目录


3、复数的简单运算


  一般地,两个复数只能说相等或不相等,而不能比较大小。如果两个复数都是实数,就可以比较大小,也只有当两个复数全是实数时才能比较大小。

  Python中的复数是由实部和虚部构成的数学对象。在Python中,可以使用后缀j或J来表示虚部,例如 1+2j 。复数在Python中支持常见的算术运算,如加法、减法、乘法和除法。

  首先是复数相等的定义:如果两个复数实部和虚部分别相等,我们就说这两个复数相等。

  数集的结构和数系的扩充:人们通常在数集上建立两种结构:运算结构与序结构。比较大小就是研究序结构。


3.1 加减乘除运算


  Python中的复数+、-、×、÷运算:+、-相对简单,就是分别对实部和虚部进行+、-运算,然后组合结果;×是相当于多项式相乘,合并实部和虚部、÷是分母实化,用×来做。

运算法则

加法法则
复数的加法法则:设z1=a+bi,z2=c+di是任意两个复数。两者和的实部是原来两个复数实部的和,它的虚部是原来两个虚部的和。两个复数的和依然是复数。

乘法法则
复数的乘法法则:把两个复数相乘,类似两个多项式相乘,结果中i2=-1,把实部与虚部分别合并。两个复数的积仍然是一个复数。

除法法则
运算方法:将分子和分母同时乘以分母的共轭复数,再用乘法法则运算。

【详见复数百科词条】


  • 代码运行效果截屏图片
    在这里插入图片描述

    复数不可以比较复数大小,除非虚部为零(即只有实部的复数)
    在这里插入图片描述

Python代码


a = 4.6 + 5.2j
b = 6.9 - 2.2J

print(f"\n有复数 a = {
     a},b = {
     b}\n\n type(a) = {
     type(a)}\n type(b) = {
     type(b)}\n\n a + b = {
     a + b}\n a - b = {
     a - b}\n a × b = {
     a * b}\n a / b = {
     a / b}")
#a > b # 不可以比较复数大小,除非虚部为零(即只有实部的复数)。



回页目录


3.2 复数的 == 运算


  Python中的复数 == 运算。
  • 代码运行效果截屏图片
    在这里插入图片描述

Python代码


a = 6.6 + 0.2j
b = 9.9 - 9.2J

print(f"\n有复数 a = {
     a},b = {
     b}\n\na == b is {
     a == b}\n\n(7-6)+3j == (7-6)+3j is {
     (7-6)+3j == (7-6)+3j}")



回页目录



4、Python中的cmath模块


  Python中有专门为复数准备了复杂数学运算的模块,可以进行开平方、对数、三角函数等相对复杂的复数数学运算。


  • 命令行简单试用cmath模块效果
    在这里插入图片描述



回页目录


5、参阅文章




回页首


上一篇:  身份证编码校验(一道校验居民身份证编码校验码的小题,触发了我对我国第二代身份证整串编码的探究:校验成功,解读编码信息)
下一篇: 



我的HOT博:

  本次共计收集289篇博文笔记信息,总阅读量44.72w。数据采集于2023年12月11日 23:07:13,用时5分11.8秒。阅读量不小于4.0k的有17篇。

    相关推荐

    1. django复杂查询

      2023-12-20 14:18:03       47 阅读
    2. Python函数

      2023-12-20 14:18:03       60 阅读
    3. python//

      2023-12-20 14:18:03       50 阅读

    最近更新

    1. docker php8.1+nginx base 镜像 dockerfile 配置

      2023-12-20 14:18:03       94 阅读
    2. Could not load dynamic library ‘cudart64_100.dll‘

      2023-12-20 14:18:03       100 阅读
    3. 在Django里面运行非项目文件

      2023-12-20 14:18:03       82 阅读
    4. Python语言-面向对象

      2023-12-20 14:18:03       91 阅读

    热门阅读

    1. 后端架构演进过程

      2023-12-20 14:18:03       65 阅读
    2. 算法竞赛进阶指南学习目录

      2023-12-20 14:18:03       64 阅读
    3. Android_adb_基本常用命令

      2023-12-20 14:18:03       81 阅读
    4. 在ubuntu中显示bmp图片

      2023-12-20 14:18:03       56 阅读
    5. 使用QGLShaderProgram类的教程和示例代码

      2023-12-20 14:18:03       58 阅读
    6. promise的all方法和race

      2023-12-20 14:18:03       50 阅读
    7. android 9 adb安装过程学习(四)覆盖安装

      2023-12-20 14:18:03       54 阅读
    8. ansible

      ansible

      2023-12-20 14:18:03      52 阅读