Python浮点数声明

时间:2016-01-08 23:17:27

标签: python gpio

我坚持这个问题。这是我的工作代码:

import RPi.GPIO as GPIO ## Import GPIO library
import time ## Import 'time' library. Allows us to use 'sleep'
GPIO.setmode(GPIO.BOARD) ## Use board pin numbering
GPIO.setup(7, GPIO.OUT) ## Setup GPIO Pin 7 to OUT
##Define a function named Blink()
def Blink(kartai):
    speed = 1
    for i in range(kartai):## Run loop numTimes
        print "Iteration " + str(i+1)## Print current loop
        GPIO.output(7,True)## Switch on pin 7
        time.sleep(speed)## Wait
        GPIO.output(7,False)## Switch off pin 7
        time.sleep(speed)## Wait
    speed = speed - 1/kartai
print "Done" ## When loop is complete, print "Done"
GPIO.cleanup()
kartai = raw_input("Enter length of each blink(seconds): ")
Blink(int(kartai))

然而,每次迭代,LED每秒闪烁一次。我认为这是因为变速被视为int,但如果我将第7行重写为:

float (speed) = 1

我收到错误:

  

无法分配到函数调用

在这一行:

print "Iteration " + str(i+1)## Print current loop

2 个答案:

答案 0 :(得分:1)

我建议您阅读python assignments的工作方式。

如果您希望speed成为花车,请尝试speed = 1.0speed = float(1)

答案 1 :(得分:1)

为什么不试试

speed = 1.0

将分配浮点数而不是整数。

当然(已经回答),您仍然可以将整数转换为浮点数

speed = float(1)