亲宝软件园·资讯

展开

python实现windows批处理

DHtsing 人气:0

1.批量处理

所谓的批处理就是批量处理cmd里面的命令。

python要想实现批处理功能需要导入os库,然后利用批处理的命令为os.system(cmd_line)其中cmd_line是输入cmd里面的命令。

import os
# 批量处理的exe文件
EXE_PATH="C:\\Users\\AAA\\Desktop\\0001\\TAppDecoder.exe"
h265_dir="D:\\YUVView\\media_h265.h265"
outyuv_dir=".yuv"
#利用标识符%s,和“%s”分别表示需要运行的exe文件和需要传入的路径
#cmd_line 为cmd输入的命令(其中exe,和路径用标识符导入)
cmd_line='%s -b "%s" -o "%s"' %(EXE_PATH,h265_dir,outyuv_dir)
#ret 是0则证明cmd运行成功,是1则证明运行失败
ret=os.system(cmd_line)

2. 文件夹操作

2.1 读取文件中的文件名

读取文件中的文件名直接用for file in os.listdir(path)就能读取path路径中所有的文件名。如果需要去除文件名的后缀首先需要输入from pathlib import Path 导入Path库,然后输入Path(file_path).stem其中file_path 为文件的路径。

import os
#导入的Path,可以读取除去后缀名后的文件名并以str形式保存
from pathlib import Path 
# 需要读取的文件目录
path="******"
somethings=os.listdir(path)
for file_1 in somethings:
    #如果是windows系统用"\\" 如果是linux系统用"/",注:以下以windows系统为例
    #这里是更新目录路径 到path的子目录路径
    path_1=path+"\\"+file_1
    somethings_1=os.listdir(path_1)
    # r如果只有两层目录到此位置,如果有三层乃至更多需要不断增加迭代层数。
    for file_2 in somethings:
        #这时候的file_2就是带有后缀名的文件。
        file_2
        file_2path=path_1+"\\"+file_2
        #为了获得file_2的名字(没有后缀名)filename类型为str
        filename=Path(file_2path).stem
        # 取filename的前两个字符
        filename[0:1]        

2.2 创建文件夹

首先用os.path.exists(path)判断是否存在(返回0代表不存在),创建文件夹使用os.makedirs(path)。

import os
# 如果没有path文件夹,就建一个文件夹
path="*****"
if not os.path.exists(path):
    os.makedirs(path)

2.3、获取某指定目录下的所有文件的列表

def getFileList( p ):
        p = str( p )
        if p=="":
              return [ ]
        p = p.replace( "/","\\")
        if p[ -1] != "\\":
             p = p+"\\"
        a = os.listdir( p )
        b = [ x   for x in a if os.path.isfile( p + x ) ]
        return b
print   getFileList( "C:\\" )

2.4、将一个路径名分解为目录名和文件名两部分

fpath , fname = os.path.split( "你要分解的路径")

例如:

a, b = os.path.split('ZC/Download/data/zc.txt' )  #以最后一个/为界分割
print a
​​​​​​​print b

显示:  

’ZC/Download/data’
‘zc.txt’

总结

加载全部内容

相关教程
猜你喜欢
用户评论