Discuss / Python / 交作业

交作业

Topic source

import os

class folder(object):    #定义文件夹类

    def __init__(self,name,pos,relpos,lst):

        self.__name = name

        self.__pos = pos

        self.__relpos = relpos

        self.__lst  = lst

    def get_name(self):

        return self.__name

    def get_lst(self):

        return self.__lst

    def get_pos(self):

        return self.__pos

    def get_relpos(self):

        return self.__relpos

def folder_mk(name,pos,relpos,lst):

    folder_list.append(folder(name,pos,relpos,lst))

def main():

    global folder_list

    folder_list = []           #生成文件夹空列表

    abp = os.path.abspath('.') #初始化主文件夹类

    relpos = ''

    main_lst = os.listdir('.') 

    f_main = folder('main',abp,relpos,main_lst)

    folder_list.append(f_main)

    for f in folder_list:      #遍历整个文件夹生成文件夹类添加进文件夹列表

        for x in f.get_lst():

            if '.' not in x:

                pos = os.path.join('%s' % f.get_pos(),'%s' % x)

                relpos = os.path.join('%s' % f.get_relpos(),'%s' % x)

                lst = os.listdir(pos)

                folder_mk(x,pos,relpos,lst)

    keywd = input('搜索:')

    search(keywd)

def search(keywd):

    for f in folder_list:

        for file in f.get_lst():

            if keywd in file and '.' in file:

                p = os.path.join('%s' % f.get_relpos(),file)

                print('包含关键词的文件路径:%s' % p)

main()


  • 1

Reply