3.python def switch

在Python中要定義函式,是使用def來定義,例如,以下是個求最大公因數的函式定義:

def gcd(m, n):

if n == 0:

return m

else:

return gcd(n, m % n)

print(gcd(20, 30)) # 顯示 10

import RPi.GPIO as GPIO

import time

import random

import numpy as np

GPIO.setwarnings(False)

GPIO.setmode(GPIO.BCM)

GPIO.setup(2,GPIO.OUT) #D 7448 P6

GPIO.setup(3,GPIO.OUT) #C 7448 P2

GPIO.setup(4,GPIO.OUT) #B 7448 P1

GPIO.setup(17,GPIO.OUT) #A 7448 P7

GPIO.setup(22,GPIO.OUT) #dark 7448 P4

GPIO.setup(27.GPIO.IN) #button ref->book A P133

def display2led(num):

if num ==0:

#顯示0

LEDon = GPIO.output(2,0)

LEDon = GPIO.output(3,0)

LEDon = GPIO.output(4,0)

LEDon = GPIO.output(17,0)

if num ==1:

#顯示1

LEDon = GPIO.output(2,0)

LEDon = GPIO.output(3,0)

LEDon = GPIO.output(4,0)

LEDon = GPIO.output(17,1)

if num ==2:

#顯示1

LEDon = GPIO.output(2,0)

LEDon = GPIO.output(3,0)

LEDon = GPIO.output(4,1)

LEDon = GPIO.output(17,0)

if num ==3:

#顯示1

LEDon = GPIO.output(2,0)

LEDon = GPIO.output(3,0)

LEDon = GPIO.output(4,1)

LEDon = GPIO.output(17,1)

while True:

value01= GPIO.input(27)

if value01 = 1:

flag = 1

display_num = random.randint(0,9)

while flag:

for i in range(0,100,5):

display_num = display_num + 1

display_num = display_num % 10

sumtime = np.tanh(i/100.0)

print("This prints ==> ." ,sumtime," Num:",display_num)

display2led(display_num) #呼叫函數

time.sleep(sumtime) # Delay for 1 minute (60 se

if sumtime > 0.7: #stop the while loop

flag = 0

break

print("End of run")