gpt4 book ai didi

python - 名称错误 : name 'process_button16' is not defined

转载 作者:太空宇宙 更新时间:2023-11-03 14:09:33 25 4
gpt4 key购买 nike

运行以下代码时,我收到 NameError: name 'process_button16' is not Defined 错误。

它还可以在不按下按钮的情况下打开 LED...这不应该这样做...

我正在尝试使用 appdaemon 中的应用程序实现按钮按下操作对于 Home Assistant 。我是一名前开发人员,但不是 python,所以我在这里用头撞键盘......任何帮助将不胜感激。

import appdaemon.appapi as appapi
from gpiozero import Button
import RPi.GPIO as GPIO

global button
BUTTON_PIN = 16
button = None



class ButtonSense(appapi.AppDaemon):
GPIO.output(17,GPIO.LOW)
GPIO.output(27,GPIO.LOW)

def initialize(self):
self.log("------- Hello -------")
button = Button(BUTTON_PIN)
button.when_pressed = process_button16()

def process_button16():
GPIO.output(17,GPIO.HIGH)
GPIO.output(27,GPIO.HIGH)
self.log("------- Pressed -------")

最佳答案

button.when_pressed = process_button16() 替换为 button.when_pressed = self.process_button16(),因为您已经定义了 process_button16()作为 ButtonSense 类的私有(private)函数。

button.when_pressed = process_button16() 尝试将名为 process_button16() 的全局函数分配给 button.when_pressed 并且因为您还没有定义任何此类全局函数,它会抛出错误NameError:名称'process_button16'未定义

关于python - 名称错误 : name 'process_button16' is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48610634/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com