Python中的range()
函数是否有等价的MATLAB函数?在MATLAB中是否有等价的Python范围函数?
我真的很希望能够输入类似range(-10, 11, 5)
的东西,并取回[-10, -5, 0, 5, 10]
,而不必手动写出整个范围。
Python中的range()
函数是否有等价的MATLAB函数?在MATLAB中是否有等价的Python范围函数?
我真的很希望能够输入类似range(-10, 11, 5)
的东西,并取回[-10, -5, 0, 5, 10]
,而不必手动写出整个范围。
是的,有:
运营商。命令-10:5:11
将产生向量[-10, -5, 0, 5, 10];
有两个相关的功能。冒号:
运算符,可以使用linspace
函数。要使用的最佳功能取决于您要指定的内容。
实例:
x = -10:5:10; % Count by 5's from -10 to 10. (or "colon(-10, 5, 10)")
x = linspace(-10, 10, 5); % 5 even increments between -10 and 10
的colon
操作的结果将总是包括第一个参数和所需的间距,但一般将不包括最后一个参数。 (例如x = -10:5:11
)。
linspace
函数将始终包含所需的第一个元素和最后一个元素,但元素间距会有所不同。 (例如linspace(-10, 11, 5)
)。
其他人提到了colon
运营商。你只需要注意一些差异。
在Python中,range
接受所有整数参数并返回一个整数列表。在MATLAB中,冒号操作符可以在开始/停止以及步长中处理浮点。
我会说numpy.arange
与MATLAB的冒号操作符更接近。
真棒,谢谢! – Karen 2012-08-09 19:23:17