python 复数是什么意思

Python (173) 2023-05-08 07:37:56

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方法,调用它可以返回该复数的共轭复数对象。

相关推荐:《Python基础教程》

>>>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-inmethodconjugateofcomplexobjectat0x00000224D6C11E10>
>>>aComplex.conjugate()
(1.56-1.2j)

2、complex()函数

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

classcomplex(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")#当做字符串处理
(1+0j)
complex("1+2j")#会出错,+号两边不能有空格,否则会报错
>>>complex("1+2.0j")
(1+2j)

第一个参数为字符串,还添加第二个参数时会报错:

>>>complex("x",15)
TypeError:complex()can'ttakesecondargiffirstisastring

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’
THE END

发表回复