import numpy as np
import math
import sympy
‘‘‘
python之Numpy 输入与输出设置
numpy.set_printoptions(precision=None,threshold=None, edgeitems=None,linewidth=None, suppress=None, nanstr=None, infstr=None,formatter=None, sign=None, floatmode=None, **kwarg)
precision:设置浮点精度,控制输出的小数点个数,默认是8。
threshold:概略显示,超过该值则以“…”的形式来表示,默认是1000。
edgeitems 当省略数组内元素内容时要显示的元素数量。
linewidth:用于确定每行多少字符数后插入换行符,默认为75。
suppress:当suppress=True,表示小数不需要以科学计数法的形式输出,默认是False。
nanstr:浮点非数字的字符串表示形式,默认nan。
infstr:浮点无穷大的字符串表示形式,默认inf。
‘‘‘
def get_delay_M():
c = 3e8
lam0 = 1550e-9
w = 2 * np.pi * c /lam0
tau1 = 0
tau2 = 5
tau3 = 50
tau4 = 55
M = np.array([[np.exp(1j * w * tau1), 0, 0, 0],
[0, np.exp(1j * w * tau2), 0, 0],
[0, 0, np.exp(1j * w * tau3), 0],
[0, 0, 0, np.exp(1j * w * tau4)]], dtype=complex)
return M
print(get_delay_M())
np.set_printoptions(edgeitems=3, precision = None, linewidth = 180)
print(get_delay_M())
结果显示(可以发现没有np.set_printoptions设置,就出来了折行的现象):
PS C:\Users\lz\Desktop\python_test> python get_dealy.py run
[[ 1. +0.j 0. +0.j 0. +0.j
0. +0.j ]
[ 0. +0.j 0.00334652-0.9999944j 0. +0.j
0. +0.j ]
[ 0. +0.j 0. +0.j 0.17852149-0.98393601j
0. +0.j ]
[ 0. +0.j 0. +0.j 0. +0.j
-0.98333308-0.18181325j]]
[[ 1. +0.j 0. +0.j 0. +0.j 0. +0.j ]
[ 0. +0.j 0.00334652-0.9999944j 0. +0.j 0. +0.j ]
[ 0. +0.j 0. +0.j 0.17852149-0.98393601j 0. +0.j ]
[ 0. +0.j 0. +0.j 0. +0.j -0.98333308-0.18181325j]]
PS C:\Users\lz\Desktop\python_test>
Reference:
[1] https://blog.csdn.net/Corollary/article/details/105920322
[2] https://www.it610.com/article/1362038411212382208.htm
原文:https://www.cnblogs.com/chuqianyu/p/14783464.html