免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 713|回复: 5
收起左侧

[技术交流] 按文件夹宗地号批量重命名文件名.py,py3.7环境。

[复制链接]

20

主题

2万

铜板

22

好友

至尊VIP

Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24

积分
487
发表于 2021-6-1 22:49 | 显示全部楼层 |阅读模式
# -*- coding: utf-8 -*-
# encoding: utf-8
"""
Created on Sat May 29 21:32:09 2021
@author: _John_Tian_
link:https://blog.csdn.net/tianzhaixing2013/article/details/40708177
#借鉴CSDN上大佬写的内容,作者也原贴作者CSDN上的ID,然后稍微改动一下,底下有一部分已经
注释掉了,本来是用来给一户一档资料重新排序的,后面又改了一下提取文件夹名称中的宗地代码
给文件重命名,这里用的截取字符串操作来获取宗地代码,其实也可以用os.path.splitext()[num]
对文件名进行分割来获取比较懒就没改了。
"""
import os
import os.path
#rootdir =r'E:/XX村一户一档/一户一档测试'# 指明被遍历的文件夹
'''
#三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字

#测试遍历文件夹
for parent, dirnames, filenames in os.walk(rootdir):   
    for dirname in dirnames:    #输出文件夹信息
        print("parent is: " + parent)
        print("dirname is: " + dirname)

    for filename in filenames:  #输出文件信息
        print("parent is: " + parent)
        print("filename is: " + filename)
        print("the full name of the file is: " + os.path.join(parent,filename)) #输出文件路径信息
'''      

curDir = os.getcwd()#获取py文件所在的文件目录,一般将文件放置在需要处理的文件夹中
#如果想手动指定文件夹,可以把上面代码改为curDir =r'E:/XX村一户一档/一户一档测试'# 指明被遍历的文件夹
oldId0 = "02不动产登记申请表.doc"
#newId0 = "01权籍资料目录"
oldId1 = "03不动产登记审批表"
#newId1 = "03不动产登记审批表"
oldId2 = "06房屋调查表.doc"
#newId2 = "04指界通知书"
oldId3 = "08地籍调查表"
newId3 = "05地籍调查表"
oldId4 = "09房屋调查表"
newId4 = "06房屋调查表"
oldId5 = "10_房屋平面图"
newId5 = "07_房屋平面图"
oldId6 = "08_宗地图"
newId6 = "08_宗地图"
oldId7 = "04界址点成果表"
newId7 = "09界址点成果表"

for parent, dirnames, filenames in os.walk(curDir):  
    for filename in filenames:  
        '''
        print("--"+parent[19:45])
        print("dirnames IS",dirnames)
        print("filename IS",filename)
        k1=len(parent)
        k3=len(filename)
        k4=k1-k3
        print(k1,k3,k4)
        '''

        if filename.find(oldId0)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId0))
            newName = filename.replace(oldId0, parent[19:38]+"_申请表.doc")
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        elif filename.find(oldId1)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId1))
            newName = filename.replace(oldId1, parent[19:38]+"审批表.doc")
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        elif filename.find(oldId2)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId2))
            newName = filename.replace(oldId2, parent[19:38]+"房调表.doc")
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        else:
            print("无需重命名排序")
            pass
        '''
        elif filename.find(oldId3)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId3))
            newName = filename.replace(oldId3, newId3)
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        elif filename.find(oldId4)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId4))
            newName = filename.replace(oldId4, newId4)
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        elif filename.find(oldId5)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId5))
            newName = filename.replace(oldId5, newId5)
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        elif filename.find(oldId0)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId6))
            newName = filename.replace(oldId6, newId6)
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        elif filename.find(oldId7)!=-1:#find函数查找不到返回-1
            print (filename.find(oldId7))
            newName = filename.replace(oldId7, newId7)
            print(filename, "---->", newName)
            os.rename(os.path.join(parent, filename), os.path.join(parent, newName))
        '''


print("按档案顺序重命名排序完成!")
#os.system("pause")  


按文件夹宗地号批量重命名文件名.zip

1.67 KB, 下载次数: 35

29

主题

3万

铜板

64

好友

地信专家组

Rank: 14Rank: 14Rank: 14Rank: 14

积分
4825

精华勋章宣传勋章爱心勋章组织勋章地信元老灌水勋章荣誉会员勋章活跃勋章地信专家组VIP勋章贡献勋章名人堂勋章成就学员勋章

发表于 2021-6-3 08:08 | 显示全部楼层
谢谢分享
回复

使用道具 举报

0

主题

343

铜板

1

好友

技术员

Rank: 3Rank: 3

积分
32
发表于 2021-6-3 09:46 | 显示全部楼层
学习分享
回复

使用道具 举报

1

主题

1万

铜板

3

好友

地信院士

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
2494
发表于 2021-8-28 20:16 | 显示全部楼层

学习分享
学习分享
回复 支持 反对

使用道具 举报

10

主题

1万

铜板

19

好友

资深会员

Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

积分
3722
发表于 2021-11-14 11:26 | 显示全部楼层
谢谢资料
回复

使用道具 举报

0

主题

451

铜板

1

好友

技术员

Rank: 3Rank: 3

积分
12
发表于 2022-1-21 15:31 | 显示全部楼层
谢谢分享
回复

使用道具 举报

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

本版积分规则

在线客服
快速回复 返回顶部 返回列表