append添加列表输出结果为每次迭代结果

append添加列表输出结果为每次迭代结果

1. 当使用OS模块遍历文件绝对路径时,可按行输出所有str格式路径

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

2. 但使用append添加列表后,输出为每一次迭代的多个列表

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
            list1.append(file_path)
            print(list1)

输出

[OUT]
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司深圳第一分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司深圳第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理有限公司深圳建安一路分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司深圳第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理有限公司深圳建安一路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司深圳科苑路分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司深圳第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理有限公司深圳建安一路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司深圳科苑路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司珠海拱北侨光路分公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司深圳第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理有限公司深圳建安一路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司深圳科苑路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司珠海拱北侨光路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-广州中庭全季酒店管理有限公司.docx']
['D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司佛山第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第三分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司广州第二分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-北京桔子水晶酒店管理咨询有限公司深圳第一分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理有限公司深圳建安一路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司深圳科苑路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-华住酒店管理(宁波)有限公司珠海拱北侨光路分公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-广州中庭全季酒店管理有限公司.docx', 'D:\\桌面\\华住直营门店-广东-37\\银联商务特约商户支付服务协议-广州壁花酒店管理有限公司.docx']

还请各位能指点一下这是什么原因?

正确的写法应该是怎样的?

把print放在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
            list1.append(file_path)
print(list1)

你是只想输出最终含有所有路径的列表吗?如果是这样的话,你print(list1)这一行的内容应该写在for循环的外面