【发布时间】:2017-10-02 02:46:21
【问题描述】:
我一直在我的新树莓派上完全按照本教程 (https://becominghuman.ai/turn-your-raspberry-pi-into-homemade-google-home-9e29ad220075) 进行操作,但一直收到错误提示
Traceback (most recent call last):
File "/home/pi/main.py", line 10, in <module>
import RPi.GPIO as GPIO
ImportError: No module named 'RPi'
我目前有两个文件在教程中列出,一个正在读取的 .py 文件
#!/usr/bin/env python
from __future__ import print_function
import argparse
import os.path
import json
import google.oauth2.credentials
import RPi.GPIO as GPIO
from google.assistant.library import Assistant
from google.assistant.library.event import EventType
from google.assistant.library.file_helpers import existing_file
GPIO.setmode(GPIO.BCM)
GPIO.setup(25, GPIO.OUT)
def process_event(event):
"""Pretty prints events.
Prints all events that occur with two spaces between each new
conversation and a single space between turns of a conversation.
Args:
event(event.Event): The current event to process.
"""
if event.type == EventType.ON_CONVERSATION_TURN_STARTED:
print()
GPIO.output(25,True)
print(event)
if (event.type == EventType.ON_CONVERSATION_TURN_FINISHED and
event.args and not event.args['with_follow_on_turn']):
print()
GPIO.output(25,False)
def main():
parser = argparse.ArgumentParser(
formatter_class=argparse.RawTextHelpFormatter)
parser.add_argument('--credentials', type=existing_file,
metavar='OAUTH2_CREDENTIALS_FILE',
default=os.path.join(
os.path.expanduser('/home/pi/.config'),
'google-oauthlib-tool',
'credentials.json'
),
help='Path to store and read OAuth2 credentials')
args = parser.parse_args()
with open(args.credentials, 'r') as f:
credentials = google.oauth2.credentials.Credentials(token=None,
**json.load(f))
with Assistant(credentials) as assistant:
for event in assistant.start():
process_event(event)
if __name__ == '__main__':
main()
另一个是读取 .sh 文件中的几行代码
#!/bin/sh
/home/pi/env/bin/python3 -u /home/pi/main.py
任何帮助或建议将不胜感激
【问题讨论】:
-
您遇到的错误与脚本中的内容无关,请尝试此人的建议。 medium.com/@kevalpatel2106/…我不记得你是否必须做 pip3(或者你正在运行的任何版本的 python)pip(python 版本)
-
已经试过几次了,还是没有解决问题
-
当您进入 python3 提示符或 python 提示符并键入“import RPi.GPIO”时会发生什么?使用不同版本导入时会不会出错?
-
导入和打印版本都没有问题。我正在使用 0.6.3 版的 RPi.GPIO
-
假设您几乎完全按照本教程进行操作并且不知道为什么要这样做,我会开始尝试将版本从 python 更改为 python3(在文件顶部)我也会可能尝试从 CL 执行(运行 python(文件名))另外,它可能看起来很奇怪,(我记得收到这个错误)确保文件是 unix 格式(LF)而不是 dos(CRLF)你可以安装软件包 dos2unix。 tbh,因为我从未尝试过该教程,所以我不确定。我可以通过它,它会很高兴获得一个免费的谷歌助手。基本上尝试任何事情来获得新的错误。
标签: python bash python-3.x raspberry-pi raspberry-pi3