Python_检查文件名是否规范(修改版)

本文介绍了如何使用Python创建一个批处理(bat)文件,该文件不仅能够检查文件是否存在,还新增了防止文件重名的功能,确保文件管理的规范性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# coding=utf-8
import os
import os.path
import re
import array
import cmd
import pdb
import pickle
import tempfile
import subprocess


# rootPath = os.getcwd()
# print rootPath
rootPath = raw_input('The Check Path:')
nonCheckDir = raw_input('The Non Check DirName(DirName1;DirName2):')
nonCheckDirList = []
if nonCheckDir:
    nonCheckDirList = nonCheckDir.split(';')
# 路径字典
pathDic = {}

# 新建文件夹  os.path.isdir(rootdir+'/logout') 判断指定目录下该文件夹是否存在
if not os.path.isdir(rootPath+'/logout'):
    os.makedirs(rootPath + '/logout')
logPath=os.path.join(rootPath,'logout')

nonstandard_filename_path = open(logPath+'/nonstandard_filename_path.txt','w')

# 标准的符号库
num = "0123456789"
word = "abcdefghijklmnopqrstuvwxyz"
sym = "_."
# 符号库
symBank = []
for key in word:
    symBank.append(key)
for key in num:
    symBank.append(key)
for key in sym:
    symBank.append(key)

def GetAllDir(getPath):
    # print (getPath)
    paths = os.listdir(getPath)
    for dirName in paths:
        dirPath = os.path.join(getPath,dirName)
        if os.path.isdir(dirPath) and dirName != '.svn':
            # print dirPath
            relPath = dirPath[len(rootPath)+1:len(dirPath)]
            # print relPath
            if not nonCheckDirList.__contains__(relPath):
                pathDic[relPath] = dirPath
                GetAllDir(dirPath)

def GetAllFile(getPath):
    files = os.listdir(getPath)
    for fileName in files:
        filePath = os.path.join(getPath,fileName)
        if fileName.endswith('.png') or fileName.endswith('.PNG'):
            fileName = fileName[0:fileName.index('.')]
            if not set(fileName).issubset(symBank):
                # print fileName
                # print filePath
                nonstandard_filename_path.write(filePath + '\n')
            else:
                # (r'_[\d]*[x|X][\d]*\d') 正则表达式 (_100x100&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值