代码: 全选
class fileFind:
catalog = ""
key = ""
result = []
def __init__(self):
self.catalog = "/"
def startDir(self,dir):
self.catalog = dir
return self.catalog
def setKey(self,key):
self.key = key
def fileSearch(self,path):
for root,dir,file in os.walk(path):
for name in dir:
self.searchThread(os.path.join(path,name))
break
for f in os.listdir(path):
if (f.strip().find(self.key)>-1):
self.result.append(os.path.join(path,f.strip()))
print(os.path.join(path,f.strip())) #查找结果get
def searchThread(self,path):
t = threading.Thread(target=self.fileSearch,args=path)
t.setDaemon(True)
t.start()
t.join()
if __name__=="__main__":
a = fileFind()
a.startDir("/home/liku")
a.setKey("")
a.searchThread(a.catalog)
Traceback (most recent call last):
File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/usr/lib/python3.5/threading.py", line 862, in run
self._target(*self._args, **self._kwargs)
TypeError: fileSearch() takes 2 positional arguments but 16 were given