python - Python 和 GPIOzero 电机功能
问题描述
我正在尝试创建一个函数,我可以在其中将方向参数传递给函数,以告诉它向前或向后驱动电机。以下是我的测试代码:
from gpiozero import Motor
from time import sleep
motor=Motor(7,8)
def move(direction):
print(direction)
motor.direction()
sleep(3)
motor.stop()
move('forward')
该调用将所需的方向(forward)传递给该函数。函数中的打印命令打印'forward'来向自己证明方向被正确接收。但是,电机控制线不将其用作参数,而只是返回大量错误。如果我用 替换direction
之后motor
,forward
它工作得很好。
解决方案
您不能只用字符串替换函数调用。
最简单的解决方案是在函数内部使用if
/else
语句move
。
if direction == 'forward':
motor.forward()
elif direction == 'backward':
motor.backward() # or whatever is appropriate
推荐阅读
- javascript - 声明全局更新窗口不起作用
- reactjs - 如何在已创建的 React Native 数据库中添加注册表单数据
- python - 如何将自定义字符串添加到 pandas 中的 count_value 图的图例?
- java - HTML按钮未重定向到Java邮件正文中的给定链接
- javascript - 部署后反应路由器不起作用
- tensorflow - 用cupy求解矩形稀疏线性方程组
- angular - 从一个组件到另一个组件的 Angular 6 调用函数,但数据未更改
- node.js - 无法在节点 js 中使用 app.delete 删除数据
- java - 通过 cygwin 在 Windows 上安装 Hadoop-1.4.6
- ios - ios - 多次调用 CATransaction 完成