今天繼續來學習numpy。
學習有關復數矩陣在numpy中的創建和使用。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author : SundayCoder-俊勇
# @File : numpy3.py
import numpy as np
# numpy基本學習第三課
# 今天學習創建一個復數矩陣。
array=np.array([1+2j,2+3j])
print array
# [ 1.+2.j 2.+3.j]
# 打印出復數矩陣的實部數據。
print array.real
# [ 1. 2.]
# 打印出復數矩陣的虛部數據。
print array.imag
# [ 2. 3.]
# 輸出復數矩陣的數據類型
print array.dtype
# complex128【復數類型】
# 無論是實數矩陣還是復數矩陣,轉化成為列表的方式均一樣。
# 例如把array目前這個復數舉證轉換成為列表。
list1=array.tolist()
print list1
# 輸出結果:[(1+2j), (2+3j)]
print list1[0]
# 輸出結果:(1+2j)
# 轉換成為列表的過程中可以指定數據類型。
# 這里我把復數矩陣轉換成為實數整形列表
list2=array.astype(int)
print list2
# 輸出結果:[1 2]
# 這里會出現一個警告:ComplexWarning: Casting complex values to real discards the imaginary part
# list2=array.astype(int)
# 也就是這樣的轉換不安全,丟失掉了復數的虛部。【一般實際中不推薦這樣使用】
運行結果:
[ 1.+2.j 2.+3.j]
[ 1. 2.]
[ 2. 3.]
complex128
[(1+2j), (2+3j)]
(1+2j)
ComplexWarning: Casting complex values to real discards the imaginary part
list2=array.astype(int)
[1 2]