下面代码中的(ev=none)
参数是什么?在
// This program detects shock and responds by turning an LED on.
import RPi.GPIO as GPIO
#!/usr/bin/env python
import RPi.GPIO as GPIO
ShockPin = 11
LedPin = 12
Led_status = 1
def setup():
GPIO.setmode(GPIO.BOARD)
GPIO.setup(LedPin, GPIO.OUT)
GPIO.setup(ShockPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.output(LedPin, GPIO.HIGH)
def swLed(ev=None):
global Led_status
Led_status = not Led_status
GPIO.output(LedPin, Led_status)
print "led: " + ("on" if Led_status else "off")
def loop():
GPIO.add_event_detect(ShockPin, GPIO.FALLING, callback=swLed, bouncetime=200)
while True:
pass
def destroy():
GPIO.output(LedPin, GPIO.LOW) # led off
GPIO.cleanup() # Release resource
if __name__ == '__main__': # Program start from here
setup()
try:
loop()
except keyboardInterrupt:
destroy()
无论何时定义新函数,都可以为函数的参数指定默认值。如果您选择这样做,您将使用您刚才看到的语法来执行此操作:
无论何时选择调用新函数,都可以使用这两个参数调用它
^{pr2}$或者,如果您将最后一个参数默认为一个值,则可以只使用第一个参数调用它,而第二个参数将始终采用默认值。在
^{3}$在这种情况下,第二个参数将只得到“some\u value”。在
这里有一些更有趣的默认值:http://effbot.org/zone/default-values.htm
DR版本:在您的例子中,编写该代码的人希望将“ev”默认为None。不知道为什么,因为函数的唯一参数从未在实际函数代码中使用过。在
相关问题 更多 >
编程相关推荐