我正在尝试在终端中运行名为 recognize-from-microphone.py 的代码。代码很长,所以我不会把整个内容都写出来。该代码的目标是识别来自连接到我的 Raspberry Pi 的 USB 麦克风的音频。
这是您需要了解的代码部分:
import os
import sys
import libs
import fingerprint as fingerprint
import argparse
from argparse import RawTextHelpFormatter
from itertools import zip_longest
from termcolor import colored
from config import get_config
from reader_microphone import MicrophoneReader
from visualiser_console import VisualiserConsole as visual_peak
from visualiser_plot import VisualiserPlot as visual_plot
from db_sqlite import SqliteDatabase
from db_mongo import MongoDatabase
if __name__ == '__main__':
config = get_config()
db = SqliteDatabase()
parser = argparse.ArgumentParser(formatter_class=RawTextHelpFormatter)
parser.add_argument('-s', '--seconds', nargs='?')
args=parser.parse_args()
if not args.seconds:
parser.print_help()
sys.exit(0)
代码需要在终端中插入一个参数。我在终端中输入:
pi@raspberrypi:~/Desktop/Research/audio_recognition_system $ python recognize-from-microphone.py -s 5
-s 5 是所需秒数的参数。但是,它返回此错误:
Traceback (most recent call last):
File "recognize-from-microphone.py", line 4, in <module>
import libs
ImportError: No module named libs
但是,当我把
pip install libs
它返回:
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: libs in /home/pi/.local/lib/python3.7/site-packages (0.0.9)
当我尝试在编译器中运行它时,它只是退出系统,因为没有插入参数,而且我不知道在实际代码中在哪里或如何插入参数,我只知道将参数放在哪里终点站。如果有人可以提供帮助那就太好了,谢谢。
旁注:目录内还有一个名为 libs 的空文件夹,这可能是问题的一部分吗?
此错误实际上并不是因为该文件夹,而是可能因为模块安装在错误的版本中。
您通常会执行命令
pip install libs
。好吧,我们改一下,一秒钟你就明白了。
我的修复:尝试使用以下方法:
py -m pip install libs
使用此命令将让我们在特定版本的Python中安装该模块,该版本当前处于活动状态并且
"right"
适合您。
我之前曾经遇到过这个问题,因为我的电脑上安装了 3 个不同版本的 Python。好吧,这就是我的解决办法,我可以说这对我有用。
谢谢您!
在 Mac 上:
打开终端,
Tensorflow/labelimg admin$:
pyrcc5 -o libs/resources.py resources.qrc