我有一个完整的 mp3 文件的文件路径列表。
print ("/home/jds/Music/Other Songs/Supernatural.mp3" in mp3_files) #prints True
for f in mp3_files:
if '/home/jds/Music/Other Songs/Supernatural.mp3' == f :
print "Gotcha"
mp3 = eyed3.load( f )
if mp3.tag is None: #check if mp3 file has id3
print f + " is None"
mp3_files.remove( f ) #no id3, remove from list!!
上面的代码打印“True”和一些文件路径。此特定文件没有 id3,因此 if 语句应该为真,并且此文件路径以后应该不再存在。不知何故,它仍在列表中,稍后会导致崩溃。
好吧,首先我检查该文件路径是否在列表中,我得到输出“True”,所以它在那里。然后我遍历列表中的每个文件路径,如果到达该文件路径,它应该打印“Gotcha”。然而,事实并非如此!怎么了?!
编辑:
我在for循环中删除了if语句之后的部分来测试一些东西,现在我得到了输出“Gotcha”。
print ("/home/jds/Music/Other Songs/Supernatural.mp3" in mp3_files) #prints True
for f in mp3_files:
if '/home/jds/Music/Other Songs/Supernatural.mp3' == f :
print "Gotcha"