我正在尝试将变量从Python代码传递给另一个。
这是我的测试代码(它在我的电脑上运行,在RaspberryPi上没有)
script.py
import paramiko
from flask import Flask
import sys
app = Flask(__name__)
@app.route('/')
def index():
return "Index"
@app.route('/led')
#def led(state):
def led():
#state = 'on'
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('myip', username = 'mypi', password = 'mypass')
stdin, stdout, stderr = \
ssh.exec_command('python /home/pi/Shield/led.py')
return "LED ON"
#return led(state)
if __name__ == "__main__":
app.run(host='0.0.0.0', port=5000)
if __name__ == "__led__":
led()
这是我的RPi上的脚本:
led.py
import time
import os
import sys
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setwarnings(False)
GPIO.setup(11,GPIO.OUT)
state = sys.argv[1]
state = 'on'
if state == 'on'
GPIO.output(11,True)
time.sleep(1)
GPIO.output(11,False)
time.sleep(1)
GPIO.cleanup()
上面的代码有效(LED闪烁,如果我将我的URL更改为0.0.0.0:5000/led),但它根本不优雅,我需要做类似的事情来关闭它,这是愚蠢的。 / p>
可以将state
变量从script.py
传递到led.py
吗?
我将有2个按钮,开/关。