Python 判断所有文件或文件夹 获取文件路径、文件名和扩展名

1.递归遍历文件

import os

# 递归遍历文件夹目录文件
# 处理文件过后按照原文件夹格式保存
def copy_from_dir(src_dir):
    files = os.listdir(src_dir)
    for fn in files:
        if fn.startswith('.'):
            continue
        full_path = os.path.join(src_dir, fn)
        if os.path.isdir(full_path):
            copy_from_dir(full_path)
            continue

        _, ext = os.path.splitext(fn)
        if ext.lower() not in ['.jpg', '.png', '.jpeg']:
            continue

        print(full_path)


if __name__ == "__main__":
    copy_from_dir("/tmp/img_test")

 

 

 

 

2.os.listdir

# 获取第一层目录
for file in os.listdir("/backup/bak2/aiphoto-1251830310/p1"):
    dir_list.append(file)
    sort_dir_list = sorted(dir_list, reverse=False)
    print("1111", sort_dir_list)

 

 

 

 

3.os.walks

import os
def walkFile(file):
    for root, dirs, files in os.walk(file):

        # root 表示当前正在访问的文件夹路径
        # dirs 表示该文件夹下的子目录名list
        # files 表示该文件夹下的文件list

        # 遍历文件
        for f in files:
            print(os.path.join(root, f))

        # 遍历所有的文件夹
        for d in dirs:
            print(os.path.join(root, d))

walkFile("/tmp/images3")

 

 

4.Python获取文件路径、文件名和扩展名

这里用到了os.path.splitext()os.path.split()

import os

url = "http://file.iqilu.com/custom/new/v2016/images/logo.png"

(file, ext) = os.path.splitext(url)
print(file)  logo
print(ext) .png

(path, filename) = os.path.split(url)
print(filename) logo.png
print(path) http://file.iqilu.com/custom/new/v2016/images

 

posted on 2021-03-19 15:43  星河赵  阅读(329)  评论(0编辑  收藏  举报

导航