>  기사  >  백엔드 개발  >  Python에서 단어 파일을 일괄 생성하고 이름을 바꾸고 삭제하는 방법

Python에서 단어 파일을 일괄 생성하고 이름을 바꾸고 삭제하는 방법

王林
王林앞으로
2023-04-30 11:52:061315검색

    단어 파일 일괄 생성

    시나리오: 유사한 파일 이름을 여러 개 생성해야 합니다

    예: 오늘의 예에서는

    Security Guard Exam Paper 1 및 Answers.docx

    라는 이름의 12개의 새 파일을 생성합니다. 경비원 시험지 2 및 Answers.docx

    ...

    경비원 시험지 12 및 Answers.docx

    고충점:

    수동 조작은 반복성이 높고 오류율이 높아 쉽게 피로함을 유발할 수 있으며, 효율성 감소

    설치

    pip install python-docx

    log

    (env_qt) D:codeqt_demodemo>pip install python-docx
    색인 찾기: pypi.tuna.tsinghua.edu.cn/simple
    Collection python-docx
    캐시된 pypi 사용 .tuna.tsinghua.edu .cn/packages/8b…
    33/python-docx-0.8.11.tar.gz (5.6MB)
    메타데이터 준비 중(setup.py) ... 완료
    lxml 수집>=2.3. 2
    pypi.tuna 다운로드 .tsinghua.edu.cn/packages/39…
    8/lxml-4.9.2-cp39-cp39-win_amd64.whl (3.9MB)
    ------------ ------ ---------- 3.9/3.9MB 1.4MB/s eta 0:00:00
    수집된 패키지를 위한 바퀴 만들기: python-docx
    python-docx용 바퀴 만들기(setup.py) ... 완료
    python-docx용 바퀴 생성: 파일 이름=python_docx-0.8.11-py3-none-any.whl 크기=184519 sha256=595cd9888a3832964d8f2477f
    fd5325f596549da8c 1dd305e63d5f 7b3d24884c
    디렉토리에 저장됨: c: userswzappdatalocalpipcachewheels39cac1d3e7abe5ce2e8423382d816e689c056bc26590f48fad8f2
    0ac
    python-docx를 성공적으로 구축함
    수집된 패키지 설치: lxml, python-docx
    성공 완전히 설치됨 lxml-4.9.2 python-docx -0.8.11
    [공지] 새 릴리스 pip 사용 가능: 22.3.1 -> ; 23.0.1
    [공지] 업데이트하려면 다음을 실행하세요: python.exe -m pip install --upgrade pip
    (env_qt) D:codeqt_demodemo>****

    Three-party 라이브러리 소개

    import os
    from docx import Document

    설명:

    1 .폴더 아래의 모든 파일은 os 모듈을 사용하여 파일 경로 아래에서 가져옵니다. os模块;

    2.word文档的相关操作使用docx

    2. code>docx 모듈;

    새 파일 이름을 일괄 생성합니다.

    시나리오: 유사한 파일 이름을 여러 개 생성해야 합니다.

    예: 오늘의 예에서는 12개의 새 파일 이름을 생성합니다.

    Security Guard 시험지 1 및 Answers.docx

    Security Guard Exam Paper 2 및 Answers.docx

    ...

    Security Guard Exam Paper 12 및 Answers.docx

    고충점:

    수동 작업은 반복성이 높고 오류율이 높습니다.

    def gen_names(pre_fix, num):
        """
        批量生成文件名
        :param pre_fix: 文件名的前缀
        :param num: 文件数量
        :return:name_list :文件名列表(所有要生成的文件名)
        """
        print("生成文件名列表开始")
    
        name_list = []
        for i in range(1, num + 1):
            tmp = pre_fix + str(i)
            name_list.append(tmp)
        print("生成文件名列表结束")
        return name_list

    단어 파일 생성

    단일 파일 생성

    def new_one_file(document, name):
        """
        生成单个文件
        :param document:
        :param name: 文件名
        :return:
        """
        print("单个生成文件开始")
        document.save(name + '.docx')
        print("单个生成文件结束")
    여러 파일 생성

    def new_many_file(document, names):
        """
        生成多个文件
        :param document: Document实例对象
        :param names:多个文件的文件名
        :return:
        """
        print("批量生成文件开始")
        for name in names:
            document.save(os.path.join("tmp", name + '.docx'))
        print("批量生成文件结束")

    파일 이름 바꾸기

    def rename_file(path):
        """
        将path路径下的文件都重命名
        规则:在原文件名后面加上 ---> "及答案." 字段
        :param path:
        :return:
        """
        print("重命名开始")
        files = os.listdir(path)
        for file in files:
            name, doc_type = file.split(".")
            new_name = os.path.join(path, name + "及答案." + doc_type)
            file_tmp = os.path.join(path, file)
            # 语法:
            # os.rename(src, dst) :用于命名文件或目录
            # src:需要修改的文件或目录名。
            # dst:修改后的文件或目录名。
            os.rename(file_tmp, new_name)
        print("重命名结束")

    파일 삭제

    def del_files(path):
        """
        删除指定路径下的文件
        :param path:
        :return:
        """
        print("删除开始")
        files = os.listdir(path)
        for file in files:
            os.remove(os.path.join(path, file))
        print("删除成功")

    함수 호출

    if __name__ == '__main__':
        path = r"C:\Users\wz\Desktop\保安员考试试卷"
        document = Document()
        pre_fix = "保安员考试"
        # name_all = gen_names(pre_fix, 10)
        # new_many_file(document, name_all)
        # rename_file("tmp")
        del_files("tmp")

    효과 표시

    파일을 일괄 생성

    Python에서 단어 파일을 일괄 생성하고 이름을 바꾸고 삭제하는 방법

    일괄 파일 이름 바꾸기

    Python에서 단어 파일을 일괄 생성하고 이름을 바꾸고 삭제하는 방법

    파일 삭제

    Python에서 단어 파일을 일괄 생성하고 이름을 바꾸고 삭제하는 방법

    모든 코드🎜
    import os
    from docx import Document
    
    
    def gen_names(pre_fix, num):
        """
        批量生成文件名
        :param pre_fix: 文件名的前缀
        :param num: 文件数量
        :return:name_list :文件名列表(所有要生成的文件名)
        """
        print("生成文件名列表开始")
    
        name_list = []
        for i in range(1, num + 1):
            tmp = pre_fix + str(i)
            name_list.append(tmp)
        print("生成文件名列表结束")
        return name_list
    
    
    def new_one_file(document, name):
        """
        生成单个文件
        :param document:
        :param name: 文件名
        :return:
        """
        print("单个生成文件开始")
        document.save(name + '.docx')
        print("单个生成文件结束")
    
    
    def new_many_file(document, names):
        """
        生成多个文件
        :param document: Document实例对象
        :param names:多个文件的文件名
        :return:
        """
        print("批量生成文件开始")
        for name in names:
            document.save(os.path.join("tmp", name + '.docx'))
        print("批量生成文件结束")
    
    
    def rename_file(path):
        """
        将path路径下的文件都重命名
        规则:在原文件名后面加上 ---> "及答案." 字段
        :param path:
        :return:
        """
        print("重命名开始")
        files = os.listdir(path)
        for file in files:
            name, doc_type = file.split(".")
            new_name = os.path.join(path, name + "及答案." + doc_type)
            file_tmp = os.path.join(path, file)
            # 语法:
            # os.rename(src, dst) :用于命名文件或目录
            # src:需要修改的文件或目录名。
            # dst:修改后的文件或目录名。
            os.rename(file_tmp, new_name)
        print("重命名结束")
    
    
    def del_files(path):
        """
        删除指定路径下的文件
        :param path:
        :return:
        """
        print("删除开始")
        files = os.listdir(path)
        for file in files:
            os.remove(os.path.join(path, file))
        print("删除成功")
    
    
    if __name__ == '__main__':
        path = r"C:\Users\wz\Desktop\保安员考试试卷"
        document = Document()
        pre_fix = "保安员考试"
        # 生成多个文件名
        # name_all = gen_names(pre_fix, 10)
        #创建多个文件
        # new_many_file(document, name_all)
        # 重命名文件
        # rename_file("tmp")
        # 删除文件
        del_files("tmp")

    위 내용은 Python에서 단어 파일을 일괄 생성하고 이름을 바꾸고 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제