我看不到我在这里做错了什么
import os
def check():
path = "d://Mu$ic//"
for file in os.listdir(path):
if file.endswith("*.mp3"):
print (os.path.join(path,file))
check()
输出不显示,知道我做错了什么吗?
我看不到我在这里做错了什么
import os
def check():
path = "d://Mu$ic//"
for file in os.listdir(path):
if file.endswith("*.mp3"):
print (os.path.join(path,file))
check()
输出不显示,知道我做错了什么吗?
省略*
应该有效,因为endswith
匹配字符串后缀(而不是*.mp3
通配符):
file.endswith(".mp3"):
此外,您可以替换//
为 just /
。
文件夹中只有mp3文件吗?如果是这样,为什么需要检查 endwith?如果 mp3 是该文件夹中唯一的文件类型,它应该能够在不检查它们是否以 .mp3 结尾的情况下返回它们。除非您在那里有其他文件类型,否则您将需要 endwith 检查。我在这里没有结束你的代码,它返回了文件夹中的每个 .wav 文件。
如果您使用的是 python 3,您也可以使用glob
import glob
_path = '{0}**/*.mp3'.format("d://Mu$ic//")
file_lst = glob.glob(_path, recursive=True)
print(file_lst)
['2.mp3', '3.mp3', ...]