Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 索引器错误:在“labels+=[i.split('/')[-2]]中列出超出范围的索引_Python_Tensorflow_Keras_Speech Recognition - Fatal编程技术网

Python 索引器错误:在“labels+=[i.split('/')[-2]]中列出超出范围的索引

Python 索引器错误:在“labels+=[i.split('/')[-2]]中列出超出范围的索引,python,tensorflow,keras,speech-recognition,Python,Tensorflow,Keras,Speech Recognition,我不熟悉TensorFlow和python。我正在尝试在中使用Keras运行和学习语音识别,我对下面这部分代码有问题,无法调试错误。 我真的需要你帮助我。 多谢各位 labels = [] for i in glob('C:\\Users\\SAHAR\\conda_code\\tamrin_deep_speech\\train\\audio\\*\\*.wav'): print("a") labels += [i.split('/')[-2]] pr

我不熟悉TensorFlow和python。我正在尝试在中使用Keras运行和学习语音识别,我对下面这部分代码有问题,无法调试错误。 我真的需要你帮助我。 多谢各位

labels = []
for i in glob('C:\\Users\\SAHAR\\conda_code\\tamrin_deep_speech\\train\\audio\\*\\*.wav'):
    print("a")
    labels += [i.split('/')[-2]]
    print("b")
labels = np.unique(np.array(labels), return_counts=True)

d = {}
for i in range(len(labels[0])):
    d[labels[0][i]] = labels[1][i]
print(d)


在windows上,路径分隔符是“\”而不是“/”。 尝试使用:

labels += [i.split('\\')[-2]]

在“/”上拆分字符串时。只需检查拆分后的列表是否包含元素。在您的情况下,拆分后的某些列表看起来是空的

这可能是因为.split调用在一个元素的情况下返回了大小为1的数组,因此使[-2]索引超出范围。请注意,对于路径操作,标准库os.path和pathlib通常优于手动字符串操作。在这种情况下,您使用了错误的路径分隔符。/是UNIX的分隔符,\n用于Windows。谢谢您的帮助。它起作用了。
labels += [i.split('\\')[-2]]