Python程序設(shè)計(jì)——復(fù)數(shù)運(yùn)算(包括極坐標(biāo)轉(zhuǎn)換)

筆者本身是電氣工程及其自動(dòng)化專業(yè)出身贝咙,在平時(shí)的工作學(xué)習(xí)過程中趴樱,經(jīng)常需要進(jìn)行復(fù)數(shù)的運(yùn)算以及矩陣相關(guān)的運(yùn)算咏瑟,但是奈何我實(shí)在是用不習(xí)慣matlab檐涝,一方面遏匆,matlab軟件動(dòng)輒十幾個(gè)G這么大;另一方面谁榜,并且在嵌入式系統(tǒng)或者樹莓派之類的系統(tǒng)上幅聘,更是不可能安裝matlab這樣的軟件,因此窃植,筆者便著手于Python語言的科學(xué)計(jì)算能力的探索帝蒿。

復(fù)數(shù)運(yùn)算

在數(shù)學(xué)上,形如a + bi 或者在工程上形如 a + bj的數(shù)叫做復(fù)數(shù)巷怜,a稱為實(shí)部葛超,b稱為虛部。
在python語言中延塑,遵循工程上的定義形式绣张,直接在python文本中輸入

x = 1 + 1j

不需要額外引入任何庫文件,直接這樣輸入就實(shí)現(xiàn)了復(fù)數(shù)變量的定義

print(type(x))
print(x)

通過print方法我們輸出變量x的數(shù)據(jù)類型和x變量的值

<class 'complex'>
(1+1j)

輸出結(jié)果如上圖所示关带,不難發(fā)現(xiàn)侥涵,變量x屬于python中的復(fù)數(shù)類型。特別值得注意的是

1宋雏、虛數(shù)不能單獨(dú)存在芜飘,它們總是和一個(gè)值為 0.0 的實(shí)數(shù)部分一起構(gòu)成一個(gè)復(fù)數(shù)
2、復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
3磨总、表示虛數(shù)的語法:re+im j
4嗦明、實(shí)數(shù)部分和虛數(shù)部分都是浮點(diǎn)數(shù)
5、虛數(shù)部分必須有后綴j或J

這樣我們就可以把復(fù)數(shù)當(dāng)作普通的數(shù)值進(jìn)行運(yùn)算了蚪燕。
但是很多時(shí)候娶牌,我們可能需要求得某個(gè)復(fù)數(shù)的共軛復(fù)數(shù)或者模值甚至是轉(zhuǎn)換為極坐標(biāo)形式奔浅。

求共軛復(fù)數(shù)

對(duì)于python內(nèi)置的complex類來說,可以通過調(diào)用conjugate()方法求得某個(gè)復(fù)數(shù)的共軛復(fù)數(shù)

x = 1 + 1j
y = x.conjugate()
print(y)

這樣我們就可以得到

(1-1j)

符合我們的預(yù)期

求復(fù)數(shù)模值

通過調(diào)用python內(nèi)置的complex類里面的__abs__()方法裙戏,可以得到某個(gè)復(fù)數(shù)的模值

x = 1 + 1j
y = x.__abs__()
print(y)

這樣我們就得到了模值

1.4142135623730951

將復(fù)數(shù)進(jìn)行標(biāo)準(zhǔn)形式與極坐標(biāo)模式的互換

目前在python內(nèi)置的complex類型中,沒有辦法直接通過調(diào)用方法進(jìn)行互換厕诡,因此我們需要引入cmath標(biāo)準(zhǔn)庫累榜。

from cmath import *

引入完cmath標(biāo)準(zhǔn)庫之后,就可以調(diào)用rect()方法和polar()方法灵嫌,前者是將一個(gè)極坐標(biāo)形式的復(fù)數(shù)轉(zhuǎn)換為標(biāo)準(zhǔn)形式的復(fù)數(shù)壹罚;后者是將一個(gè)標(biāo)準(zhǔn)形式的復(fù)數(shù)轉(zhuǎn)換為極坐標(biāo)形式的復(fù)數(shù)

x = 1 + 1j
a = polar(x)
print(a)

上面的代碼可以將變量x轉(zhuǎn)換為極坐標(biāo)形式的復(fù)數(shù),其輸出結(jié)果如下所示:

(1.4142135623730951, 0.7853981633974483)

返回值是一個(gè)元組類型寿羞,第一項(xiàng)是模值猖凛,第二項(xiàng)是相角,相角采用的是弧度制绪穆,這一點(diǎn)需要特別注意辨泳!

接下來我們嘗試將極坐標(biāo)形式的復(fù)數(shù)轉(zhuǎn)換為標(biāo)準(zhǔn)形式的復(fù)數(shù),因此我們需要調(diào)用rect()方法玖院,這個(gè)方法需要接收兩個(gè)參數(shù),第一個(gè)參數(shù)是幅值菠红,第二個(gè)參數(shù)是相角,這里面的相角也是弧度制难菌,例如下面的代碼將上面例子中的極坐標(biāo)形式的變量a轉(zhuǎn)換為標(biāo)準(zhǔn)形式的復(fù)數(shù)

x = 1 + 1j
a = polar(x)  # 轉(zhuǎn)換為極坐標(biāo)形式
b = rect(a[0], a[1])  # 轉(zhuǎn)換為標(biāo)準(zhǔn)形式
print(b)  # 輸出變量b的值
print(type(b))  # 輸出變量b的類型

輸出結(jié)果如下所示:

(1.0000000000000002+1.0000000000000002j)
<class 'complex'>

可以看到輸出結(jié)果符合預(yù)期试溯,至于并不絕對(duì)等于原來x變量的原因還是因?yàn)橛?jì)算機(jī)對(duì)浮點(diǎn)數(shù)的精度影響,實(shí)際使用過程中忽略就可以了郊酒。
通過輸出變量b的類型遇绞,我們發(fā)現(xiàn)變成了python內(nèi)置的complex類型,因此可以繼續(xù)參與后續(xù)的數(shù)學(xué)運(yùn)算了燎窘!

本教程持續(xù)更新摹闽!歡迎點(diǎn)贊關(guān)注!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末褐健,一起剝皮案震驚了整個(gè)濱河市钩骇,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌铝量,老刑警劉巖倘屹,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異慢叨,居然都是意外死亡纽匙,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門拍谐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來烛缔,“玉大人馏段,你說我怎么就攤上這事〖桑” “怎么了院喜?”我有些...
    開封第一講書人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)晕翠。 經(jīng)常有香客問我喷舀,道長(zhǎng),這世上最難降的妖魔是什么淋肾? 我笑而不...
    開封第一講書人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任硫麻,我火速辦了婚禮,結(jié)果婚禮上樊卓,老公的妹妹穿的比我還像新娘拿愧。我一直安慰自己,他們只是感情好碌尔,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開白布浇辜。 她就那樣靜靜地躺著,像睡著了一般唾戚。 火紅的嫁衣襯著肌膚如雪奢赂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,624評(píng)論 1 305
  • 那天颈走,我揣著相機(jī)與錄音膳灶,去河邊找鬼。 笑死立由,一個(gè)胖子當(dāng)著我的面吹牛轧钓,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播锐膜,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼毕箍,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了道盏?” 一聲冷哼從身側(cè)響起而柑,我...
    開封第一講書人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎荷逞,沒想到半個(gè)月后媒咳,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡种远,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年涩澡,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片坠敷。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡妙同,死狀恐怖射富,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情粥帚,我是刑警寧澤胰耗,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站芒涡,受9級(jí)特大地震影響柴灯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拖陆,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一弛槐、第九天 我趴在偏房一處隱蔽的房頂上張望懊亡。 院中可真熱鬧依啰,春花似錦、人聲如沸店枣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鸯两。三九已至闷旧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間钧唐,已是汗流浹背忙灼。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留钝侠,地道東北人该园。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像帅韧,于是被迫代替她去往敵國和親里初。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容