问题:
Python遍历文件夹中文件路径
封装函数后为何只输出第一个
1. 当我使用for循环遍历文件夹时,输出结果正常,为文件夹中所有文件地址
for each in os.walk(r'D:\桌面\华住直营门店-广东-37'):
for each_list in each[2]:
if each_list.split('.')[1] == 'docx':
file_path = each[0] + "\\" + each_list
print(file_path)
[OUT]:
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司深圳第一分公司.docx
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-华住酒店管理有限公司深圳建安一路分公司.docx
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司深圳科苑路分公司.docx
2.但我封装入函数时,只打印第一个结果
def path_docx(path):
for root, dirs, files in os.walk(path):
for file in files:
if file.split('.')[1] == 'docx':
files_path = os.path.join(root, file)
return files_path
print(path_docx(r'D:\桌面\华住直营门店-广东-37'))
[OUT]
D:\桌面\华住直营门店-广东-37\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx
还请各位指点,这是为何?