太阳花田 发表于 2017-4-21 19:02:11

关于os.walk的疑问

import os

file_index = input('请输入目录:')
for i in os.walk(file_index):
    print(i)

写了一个很简单的代码(测试用的)?但发现os.walk()不能对自己所在的目录进行全遍历图如下:


为什么换了位置结果不同,给的路径都是相同的啊!

lumber2388779 发表于 2017-4-21 20:11:12

我试了一下当我的程序在D盘某个文件夹下时,我输入D:遍历的是文件夹下面的而不是整个D盘的
而输入E:遍历的是整个E盘下面的目录
而当输入D:\时就会遍历整个D盘的目录
这个可能是这个方法的开发者模拟了CMD命令的处理,当工作路径和你输入的不完整目录处于同个分区下时,默认使用的是工作路径,就是你程序存放处,D:这种属于不完整D:\才属于完整的
你可以在cmd下面试下,默认启动后在C盘的C:\Users\admin\ 当你输入C:的时候目录不会改变
当你输入D:会跳转到D盘的工作路径,再输入C还是回到刚才的目录
页: [1]
查看完整版本: 关于os.walk的疑问