python-如何在python for循环中将步骤值设置为float?

时间:2018-07-13 11:51:24

标签: python loops fortran

我想以0.05的步长从0到64运行for循环。如果我使用范围函数,它将给出Typeerror。我的代码

for i in range(0,64,2):
   P=0+i
   Q=2+i
   for s in range(P,Q,0.05):
       X=s

我实际上是将FORTRAN代码转换为python,在该代码中,步长为0.05。代码:

DO 20 I =0,64,2
    P=0+i
    Q=2+i
DO 10 s=P,Q,0.05
   X=s
   IF((X.GE.P).AND.(X.LT.(P+Q/2))) THEN
         Y = -1
   ELSEIF (X.GE.(P+Q/2).AND.(X.LT.Q))
        Y=1
   ENDIF
        WRITE(*,*)y

请帮助我如何将该代码正确转换为python。 编辑: 请检查其余的代码,但我不明白此ENDIF语句的作用。

2 个答案:

答案 0 :(得分:0)

您可以使用它;

for s in [x * 0.1 for x in range(P, Q)]:
    X=s

答案 1 :(得分:0)

我认为您可以执行以下操作:

for i in range(0,64,2):
   P=0+i
   Q=2+i
   for s in range(P,Q*20):
       X=s/20