1 Python中的算数
虚数不能单独存在,它们总是和一个值为0.0的实数部分一起构成一个复数
表示虚数的语法:real+imagj
实数部分和虚数部分都是浮点数
虚数部分必须有j或J
下面是些得数:
64.23+1j            4.34-8.5j            0.23-8.33j            1.23e-0.45+6.5e+0.83j              -1.23-3.5j            -0.34-0j
复数中的内建属性

复数拥有数据属性,分别为该复数的实数和虚数部分。复数还有conjugate方法,调用它可以返回该复数的共轭复数对象。

 >>> aComplex = 1.56 + 1.2j
>>> aComplex
(1.56+1.2j)
>>> bComplex = 1 - 1j
>>> bComplex
(1-1j)
>>> aComplex.real
1.56
>>> aComplex.imag
1.2
>>> aComplex - bComplex
(0.56+2.2j)
>>> abs(aComplex) #返回复数的模长
1.968146336022807
>>> aComplex.conjugate
<built-in method conjugate of complex object at 0x00000224D6C11E10>
>>> aComplex.conjugate()
(1.56-1.2j)
属性 描述
num.real 该复数的实数部分
num.imag 该复数的虚数部分
num.conjugat() 返回该复数的共轭算数

complex()函数

2 complex()函数

complex()函数用于创建一个复数或者将一个数或字符串转换为复数形式,其返回值为一个复数。该函数的语法为:

class complex(real,imag)

其中,real可以为int、long、float或字符串类型;而image只能为int、long、或float类型。

  • 注意:如果第一个参数为字符串,第二个参数必须省略,若第一个参数为其他类型,则第二个参数可以选择。实例:
 >>> 1 + 1j
(1+1j)
>>> complex(1) #数字
(1+0j)
>>> complex(1,2)
(1+2j)
>>> complex("") #当做字符串处理
(1+0j)
complex("1 + 2j") #会出错,+号两边不能有空格,否则会报错
>>> complex("1+2.0j")
(1+2j)
  • 第一个参数为字符串,还添加第二个参数时会报错:
>>> complex("x",15)
TypeError: complex() can't take second arg if first is a string

3 复数的旧式格式化输出

在格式化输出时,使用%r或%s都可以。

在输出复数时,%r和%s的效果如下:

 a = 4.7+0.666j
print('%r的效果是:', end='')
print('%r' % a)
print('%s的效果是:', end='')
print('%s' % a)

输出结果:

 %r的效果是:(4.7+0.666j)
%s的效果是:(4.7+0.666j)

可见效果是一致的。

4 复数的format格式化输出

(3)关于复数

“{0.real:.3f}{0.imag:+.3f}j”.format(4.2344+5.3445j) ==> ‘4.234+5.345j’ 
“{0.real:.3f}{0.imag:-.3f}j”.format(4.2344+5.3445j) ==> ‘4.234-5.345j’ 
前面的+-可以不写让他自己去判断: 
“{0.real:.3f}{0.imag:.3f}j”.format(4.2344+5.3445j) ==> ‘4.234+5.345j’ 
“{0.real:.3f}{0.imag:.3f}j”.format(4.2344+5.3445j) ==> ‘4.234-5.345j’

python 复数类型的更多相关文章

  1. Python变量类型(l整型,长整形,浮点型,复数,列表,元组,字典)学习

    #coding=utf-8 __author__ = 'Administrator' #Python变量类型 #Python数字,python支持四种不同的数据类型 int整型 long长整型 flo ...

  2. 12.Python数值类型(整形、浮点型和复数)及其用法

    实际开发中,我们经常需要使用数字记录游戏中用户的得分.游戏中角色的生命值.伤害值等信息,Python 语言提供了数值类型用于保存这些数值. 需要注意的是,Python 中这些数值类型都是不可改变的,也 ...

  3. Python 变量类型

    Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...

  4. Python变量类型

    Python变量类型 变量是存储在内存中的值,因此在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定的内存,并决定什么数据可以被存储在内存中. 因此变量可以指定不同的数据类型, ...

  5. Python对象类型及其运算

    Python对象类型及其运算 基本要点: 程序中储存的所有数据都是对象(可变对象:值可以修改 不可变对象:值不可修改) 每个对象都有一个身份.一个类型.一个值 例: >>> a1 = ...

  6. [Python]基础教程(4)、Python 变量类型

    Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...

  7. Python: 复数的数学运算

    写的最新的网络认证方案代码遇到了一个难题,唯一的解决办法就是使用复数空间,需要使用复数来执行一些计算操作. 复数可以用使用函数complex(real, imag) 或者是带有后缀j 的浮点数来指定. ...

  8. 【Python】Python对象类型及其运算

    Python对象类型及其运算 基本要点: 程序中储存的所有数据都是对象(可变对象:值可以修改 不可变对象:值不可修改) 每个对象都有一个身份.一个类型.一个值 例: >>> a1 = ...

  9. python数值类型与序列类型

    基本运算符 / 浮点除法 //整除 x**y  x的y次方 python中严格区分大小写 type(xx)/内置函数,查看变量xx的类型 id(xx)/内置函数,查看变量xx的内存地址 //----- ...

随机推荐

  1. ES6 入门Promise

    Promise是一个对象用来传递异步操作的消息,有三种状态:Pending(进行中),Resolved(已完成又称Fulfilled)和Rejected(已失败). 特点:对象状态不受外界的影响.一旦 ...

  2. java 解耦

    探索目的:使用的时候,只需要一次调用就可以完成日常复杂的操作.而工具类的高耦合带来业务代码维护复杂度加大.以 java 的思想对原始工具加以改进. 有没有比这里尝试的方法更高明的,在 A_Utils. ...

  3. Synchronized方法锁、对象锁、类锁区别

    synchronized,这个东西我们一般称之为”同步锁“,他在修饰代码块的时候需要传入一个引用对象作为“锁”的对象. 在修饰方法的时候,默认是当前对象作为锁的对象 在修饰类时,默认是当前类的Clas ...

  4. gentoo 图像方面的软件

    图像方面的软件一般包括:查看图像,屏幕截图,图像修改. 查看图像简单的可以安装 feh,但是 feh 一般作为墙纸来用.稍微好一些的是 gqview. 屏幕截图可以用 screengrab,使用的时候 ...

  5. java中异常处理

    看到一篇异常处理的好文章: Java异常处理机制主要依赖于try,catch,finally,throw,throws五个关键字. try 关键字后紧跟一个花括号括起来的代码块,简称try块.同理:下 ...

  6. TCC细读 - 2 核心实现

    TCC,基于业务层面的事物定义,粒度完全由业务自己控制,本质上还是补偿的思路,它把事物运行过程分为try-confirm-cancel阶段,每个阶段逻辑由业务代码控制 业务活动管理器控制业务活动的一致 ...

  7. jQuery.extend 与 jQuery.fn.extend

    extend方法为jQuery对象的核心之一,语法如下: jQuery.extend([deep], target, object1, [objectN]),返回值Object. 概述:用一个或多个其 ...

  8. ELK6.0部署:Elasticsearch+Logstash+Kibana搭建分布式日志平台

    一.前言 1.ELK简介 ELK是Elasticsearch+Logstash+Kibana的简称 ElasticSearch是一个基于Lucene的分布式全文搜索引擎,提供 RESTful API进 ...

  9. 二十一、proxyDesign 代理模式

    原理: 时序图: 代码清单: Printable public interface Printable { void setPrinterName(String name); String getPr ...

  10. 深入理解Jvm 虚拟机

    参考: 内存模型:https://blog.csdn.net/qq_34280276/article/details/52783096 类加载原理:https://nomico271.github.i ...