鱼C论坛

 找回密码
 立即注册
查看: 3162|回复: 5

这段代码求指导。。。

[复制链接]
发表于 2014-8-6 23:42:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. import easygui as g
  2. import  os
  3. fieldname= ['文件名','路径','写入的字段']
  4. pro = g.multenterbox('输入你想搜索的文件',field = fieldname)
  5. name = pro[0]
  6. path = pro[1]
  7. write =pro [2]


  8.    



  9. def search (name,path,write):
  10.     os.chdir(path)
  11.    
  12.     for each in os.listdir(os.curdir) :
  13.         try:
  14.             os.chdir(each)
  15.             
  16.             if os.path.isdir(each):
  17.                 os.chdir(each)
  18.                 search (name,each)
  19.                 os.chdir(os.pardir)
  20.             if name == each:
  21.                 target = open (name,'w')
  22.                 target.write(str(write))
  23.                 target.close()
  24.                 mulu = os.getcwd ()
  25.         except PermissionError :
  26.             continue
  27.     save = open ('保存的文件'.corner,'w')
  28.     save.write(mulu)
  29.     save.close()


  30. search(name,path,write)
复制代码


是个搜索文件 并且把字段写入文件 并保存为.corner的 程序。。
老是报错啊。。。
  1. Traceback (most recent call last):
  2.   File "C:/Users/Administrator/1.py", line 37, in <module>
  3.     search(name,path,write)
  4.   File "C:/Users/Administrator/1.py", line 19, in search
  5.     os.chdir(each)
  6. FileNotFoundError: [WinError 2] 系统找不到指定的文件。: '360SANDBOX'
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-8-7 08:15:37 From FishC Mobile | 显示全部楼层
。。。。自己好好检查下逻辑,下午给你代码~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-7 11:57:31 | 显示全部楼层
  1. def search (name,path,write):
  2.     os.chdir(path)
  3.     for each in os.listdir(os.curdir) :
  4.         try:
  5.             os.chdir(each)
  6.             if os.path.isdir(each):
  7.                 path = each
  8.                 search (name,path,each)  
  9.             if name == each:
  10.                 target = open (name,'w')
  11.                 target.write(str(write))
  12.                 target.close()
  13.                 #mulu = os.getcwd ()
  14.         except PermissionError :
  15.             continue
  16.         os.chdir(os.pardir)
复制代码


递归这么写
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-7 15:28:24 | 显示全部楼层

谢谢!其实我才起来。。。。。昨晚睡迟了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-7 16:25:26 | 显示全部楼层

问一下 为什么递归搜索文件的时候 需要返回上一层目录 一直搜索下去 所有的文档搜索完毕了 就停止了啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-7 16:42:49 | 显示全部楼层
你自己找几个简单的递归先看看,这个很难讲
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 16:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表