本文主要讲解python os模块目录和文件相关函数并给出实例,如何通过python脚本获取特定目录下的指定类型文件

脚本如下:

import os

import glob

# 获取当前工作目录,返回数据类型:字符串str,返回值为当前工作目录

print(os.getcwd())

# 运行结果

"""

D:\cloudcmd_admin\深入python

"""

# 切换目录,r,单词raw,表示源样输出,不需要转义

os.chdir(r"D:\cloudcmd_admin\common")

print(os.getcwd())

# 运行结果

"""

D:\cloudcmd_admin\common

"""

# os.path.split() 切分给定的目录或者文件,返回值为元祖,若给定目录,则返回值为上级目录和当前目录名称;

# 若给定文件,返回值为上级目录和当前文件名称

print(os.path.split(r"D:\cloudcmd_admin\common\BaseBrowser.py"))

print(os.path.split(r"D:\cloudcmd_admin\common"))

# 运行结果

"""

('D:\\cloudcmd_admin\\common', 'BaseBrowser.py')

('D:\\cloudcmd_admin', 'common')

"""

# 切分给定的文件路径,返回数据类型为元祖,值为文件路径和文件后缀

print(os.path.splitext(r"D:\cloudcmd_admin\common\BaseBrowser.py"))

# 运行结果

"""

('D:\\cloudcmd_admin\\common\\BaseBrowser', '.py')

"""

# 切分给定的文件路径,返回数据类型为元祖,值为系统盘符和文件路径

print(os.path.splitdrive(r"D:\cloudcmd_admin\common\BaseBrowser.py"))

# 运行结果

"""

('D:', '\\cloudcmd_admin\\common\\BaseBrowser.py')

"""

# 实用举例,打印目录 D:\cloudcmd_admin\packages\yaml文件 下的.py文件

"""

思路:

1,切换工作目录到 D:\cloudcmd_admin\packages\yaml文件

2,使用glob.glob列出该目录下的所有文件和目录

3,使用os.path.splitext 获取后缀

4,判断后缀是否等于.py,相等则打印

"""

def get_suffix(file, suffix=".py"):

"""

获取文件后缀,默认获取.py文件

@param file: 文件目录

@param suffix: 文件后缀

@return: 指定后缀的文件列表

"""

files = []

for file in glob.glob(os.path.join(file, "*")):

if os.path.splitext(file)[-1] == suffix:

files.append(file)

return files

if __name__ == '__main__':

print(get_suffix(r"D:\cloudcmd_admin\packages\yaml文件"))

python 获取文件格式(python脚本获取指定类型文件)(1)

python 获取文件格式(python脚本获取指定类型文件)(2)

,