我正在尝试将MATLAB代码转换为Python。
我的MATLAB代码:
ASE_lamda1=1000e-9;
ASE_lamda2=1100e-9;
del_lamda= 2e-9;
ASE_lamda = (ASE_lamda1:del_lamda: ASE_lamda2)';
下面是我正在尝试的eqv. Python代码:
#!/usr/bin/python
import numpy as np
ASE_lamda1 = 9.9999999999999995e-07
ASE_lamda2 = 1100e-9
del_lamda = 2e-9
ASE_lamda = np.transpose(np.arange[ASE_lamda1:del_lamda:ASE_lamda2])
但我收到以下错误:
Traceback (most recent call last):
File "tasks.py", line 22, in <module>
ASE_lamda = np.transpose(np.arange[ASE_lamda1:del_lamda:ASE_lamda2])
TypeError: 'builtin_function_or_method' object has no attribute '__getitem__'
我不确定这个错误是什么意思,因为我对Python / Numpy / Scipy没有太多的专业知识。
1条答案
按热度按时间mwkjh3gx1#
该
应该是
这将返回
这是一个1D数组,所以转置它是一个空操作。你可能需要也可能不需要将它重新整形为2D,这取决于你要对它做什么。一个简单的方法是使用切片和
numpy.newaxis
将数组重新整形为2D:如果你要从MATLAB转到NumPy,看看NumPy for Matlab Users。