如何使用给定的增量创建一系列数字

Vai*_*han 2 python matlab file list

我想知道列表中是否有等效语句来执行以下操作.在MATLAB中,我会做以下事情

fid = fopen('inc.txt','w')
init =1;inc = 5; final=51;
a = init:inc:final
l = length(a)
for i = 1:l
   fprintf(fid,'%d\n',a(i));
end
fclose(fid);
Run Code Online (Sandbox Code Playgroud)

简而言之,我有一个初始值,一个最终值和一个增量.我需要创建一个数组(我读它相当于python中的列表)并打印到文件.

lmj*_*ns3 6

在Python中,range(start, stop + 1, step)可以像Matlab的start:step:stop命令一样使用.与Matlab的功能,但是,range只能当start,stepstop都是整数.如果您想要一个使用浮点值的并行函数,请尝试以下arange命令numpy:

import numpy as np

with open('numbers.txt', 'w') as handle:
    for n in np.arange(1, 5, 0.1):
        handle.write('{}\n'.format(n))
Run Code Online (Sandbox Code Playgroud)

请记住,不同于MATLAB,range并且np.arange都希望他们的论点的顺序start,stopstep.还要记住的是,不同于Matlab的语法,range以及np.arange双方尽快停止作为当前值大于或等于停止值.

http://docs.scipy.org/doc/numpy/reference/generated/numpy.arange.html