python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python文件夹按数字排序

Python实现读取文件夹按数字排序功能

作者:慕尘

这篇文章主要介绍了Python读取文件夹按数字排序,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

先给大家介绍下Python读取文件夹按数字排序的代码,内容如下所示:

python中 os.listdir()方法用于返回指定的文件夹包含的文件或文件夹的名字的列表

import os
path = "../data/materials/test/"
path_list = os.listdir(path)
print(path_list)

输出

['1.jpg', '10.jpg', '11.jpg', '12.jpg', '13.jpg', '14.jpg', '15.jpg', '16.jpg', '17.jpg', '18.jpg', '19.jpg', '2.jpg', '20.jpg', '3.jpg','4.jpg', '5.jpg', '6.jpg', '7.jpg', '8.jpg', '9.jpg']

返回的文件名不是顺序的

使用sort()对返回的文件名列表进行排序

path = "../data/materials/test/"
path_list = os.listdir(path)
path_list.sort(key=lambda x: int(x.split('.')[0]))
print(path_list)

输出

['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg', '6.jpg', '7.jpg', '8.jpg', '9.jpg', '10.jpg', '11.jpg', '12.jpg', '13.jpg', '14.jpg', '15.jpg', '16.jpg', '17.jpg', '18.jpg', '19.jpg', '20.jpg']

扩展知识:

python读取文件夹内容

1. 文件夹读取文件

Python os.listdir() 方法:

os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表

import os, sys
# 打开文件
COOKED_FOLDER = './cooked_traces/'  #文件夹的地址
dirs = os.listdir( COOKED_FOLDER )
 
# 输出所有文件和文件夹
for file in dirs:
   print (file)             #读出所有文件夹名字

2. 文件中读取文件内容

open() 方法

open(file, moopen(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

https://www.runoob.com/python/file-methods.html   #具体的每个关键字的含义

Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。

import os, sys 
# 打开文件
COOKED_FOLDER = './cooked_traces/'  #文件夹的地址
dirs = os.listdir( COOKED_FOLDER )
 
# 输出所有文件和文件夹
for file in dirs:
#   print(file)  #输出所有文件夹名字
   filepath = COOKED_FOLDER + file  #文件所在地址
   with open(filepath,'r') as f:    #读取文件
        for line in f :  #          #按行遍历文件内容
            print(line)  #输出每行信息

到此这篇关于Python读取文件夹按数字排序的文章就介绍到这了,更多相关Python文件夹按数字排序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文