新人求助:第30讲练习
这里为什么没有把路径打出来呢?还有这个代码不是很明白,递归调用内层能到外层?
本帖最后由 JAY饭 于 2018-2-27 15:30 编辑
这个代码没问题啊,你发出来我们试一下,还有,它每一层递归结束后都有一个返回上一层目录,所以不必担心递归回不来。 JAY饭 发表于 2018-2-27 15:28
这个代码没问题啊,你发出来我们试一下,还有,它每一层递归结束后都有一个返回上一层目录,所以不必担心递 ...
好,那请你试试
import os
def search_file(start_dir,target):
os.chdir(start_dir) #chdir表示改变工作目录
for each_file in os.listdir(os.curdir):
if each_file == target:
print(os.getcwd() + os.sep + each_file)#getcwd表示返回当前目录
#sep表示输出os的特定分隔符
if os.path.isdir(each_file):
search_file(each_file,target)#递归调用
os.chdir(os.pardir)#pardir表示上一级目录 递归调用后记得返回上一级目录
start_dir = input('请输入将查找的初始目录:')
target = input('请输入需要查找的目标文件:')
search_file(start_dir,target) 本帖最后由 JAY饭 于 2018-3-1 18:24 编辑
Python小百 发表于 2018-3-1 16:50
好,那请你试试
import os
缩进有问题,第二个if 不能写在前面的if缩进里
JAY饭 发表于 2018-3-1 18:21
缩进有问题,第二个if 不能写在前面的if缩进里
还是不可以呀
下面是截图你看看 截图 麻烦你文件后面带个后缀{:9_229:} JAY饭 发表于 2018-3-2 11:17
麻烦你文件后面带个后缀
不行,加了后缀也还是不显示路径 那就不知道了。。。
页:
[1]