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文件夹按数字排序内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python读取文件夹中图片的图片名并写入excel表格

    有的时候,我们需要读取图片名,写入表格中,以便结合图片的其他信息,做进一步的分析. 假如,现在要读取存放在E盘的origin_file文件夹,读取里面的图片名将其写入到excel文件img.xlsx中. 首先,需要读取图片文件夹路径 import pandas as pd import os os.chdir('E:\\') #1.读取图片文件夹路径 path='origin_file' 然后,pandas建立空白excel文件"img.xlsx" #2.建立空白excel文件&quo

  • Python读取文件夹下的所有文件实例代码

    Python读取文件夹下的所有文件 os.listdir(path)是得到在path路径下所以文件的名称列表. open(path)是打开某个文件. iter是python的迭代器. 所以读取某文件夹下的所有文件如下: import os path = "D:/Python34/news" #文件夹目录 files= os.listdir(path) #得到文件夹下的所有文件名称 s = [] for file in files: #遍历文件夹 if not os.path.isdir

  • python读取多层嵌套文件夹中的文件实例

    由于工作安排,需要读取多层文件夹下嵌套的文件,文件夹的结构如下图所示: 想到了递归函数,使用python的os.path.isfile方法判断当前是不是可执行文件,如果不是再用os.listdir方法将子目录循环判断. 代码如下 import os path = 'abc' path_read = [] #path_read saves all executable files def check_if_dir(file_path): temp_list = os.listdir(file_pa

  • Python 对输入的数字进行排序的方法

    要求,输入一串数字,并以列表的形式打印出来. number = input('请输入一串数字:') print(number) print(type(number)) 假设输入12345,得到结果如下: 请输入一串数字:12345 12345 <class 'str'> 可以看出,变量number类型为字符串类型. 将其转换成列表,如下所示: print(list(number)) 得到: ['1', '2', '3', '4', '5'] 显然,我们想得到是:[1,2,3,4,5],这种以数

  • python或C++读取指定文件夹下的所有图片

    本文实例为大家分享了python或C++读取指定文件夹下的所有图片,供大家参考,具体内容如下 1.python读取指定文件夹下的所有图片路径和图片文件名 import cv2 from os import walk,path def get_fileNames(rootdir): data=[] prefix = [] for root, dirs, files in walk(rootdir, topdown=True): for name in files: pre, ending = pa

  • Python将列表中的元素转化为数字并排序的示例

    本文实例讲述了Python中列表元素转为数字的方法.分享给大家供大家参考,具体如下: 有一个数字字符的列表: numbers = ['2', '4', '1', '3'] 想要把每个元素转换为数字: numbers = [2, 4, 1, 3] 1. Python2.x,可以使用map函数: numbers = map(int, numbers) 2. Python3.x,map返回的是map对象,当然也可以转换为List: numbers = list(map(int, numbers)) 排

  • Python 读取指定文件夹下的所有图像方法

    (1)数据准备 数据集介绍: 数据集中存放的是1223幅图像,其中756个负样本(图像名称为0.1~0.756),458个正样本(图像名称为1.1~1.458),其中:"."前的标号为样本标签,"."后的标号为样本序号 (2)利用python读取文件夹中所有图像 ''' Load the image files form the folder input: imgDir: the direction of the folder imgName:the name of

  • 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',

  • python+opencv 读取文件夹下的所有图像并批量保存ROI的方法

    如下所示: import cv2 import os import numpy as np root_path = "I:/Images/2017_08_03/" dir = root_path+"images"+"/" count = 0 for root,dir,files in os.walk(dir): for file in files: srcImg = cv2.imread(root_path+"images"+

  • 解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题

    1. os.listdir()概述 os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表. 例如: dir ='F:/Home_01/img'#当前目录 filenames=os.listdir(dir)#filenames存储dir下的所有文件名. 注意:os.listdir()返回的文件名不一定是顺序的,也就是说结果是不固定的,如下图,则filenames[0]有可能为'22.jpg',而不是我们所希望的'11.jpg'. 解决办法: filenames=os.l

  • 教你用Python按顺序读取文件夹中文件

    我们有时候会读取一个文件夹中的所有的文件.但是,os.listdir()返回的文件名不一定是顺序的,这就要求我们对返回的文件名列表进行排序: 这时我们想到利用Epoch后面的数字对其进行排序,具体代码如下: def file_name(path): train_loss_list = [] val_loss_list = [] loss_file_name = [] files = os.listdir(path) # 采用listdir来读取所有文件 for i in files: loss_

  • python顺序的读取文件夹下名称有序的文件方法

    如下所示: import os path="/home/test/" #待读取的文件夹 path_list=os.listdir(path) path_list.sort() #对读取的路径进行排序 for filename in path_list: print(os.path.join(path,filename)) 以上这篇python顺序的读取文件夹下名称有序的文件方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • python 实现对文件夹内的文件排序编号

    使用时,需更改rootdir, 即文件保存的路径,以及要保存的格式,例如'.jpg' 如果排序前后文件格式一样,建议先随便换个格式,然后再换回来,也就是程序运行两次,第一次随便换个格式,第二次换成想要的格式. #!usr/bin/env python import os import os.path rootdir = "C:\\Users\\IronMan\\Desktop\\launch\\" files = os.listdir(rootdir) b=0 for name in

  • Python导入父文件夹中模块并读取当前文件夹内的资源

    在某些特殊情况下,我们的 Python 脚本需要调用父目录下的其他模块.例如: 在编写 GNE 的测试用例时,有一个脚本 generate_new_cases.py放在 tests文件夹中.而 tests 文件夹与 gne 文件夹放在同一个位置.其中 gne 文件夹是一个包.我现在需要从generate_new_cases.py 文件中导入 gne 里面的一个类GeneralNewsExtractor. 为了简化问题,我单独写了一个演示的样例.它的文件结构与每个文件中的内容如下: 现在,我直接在

  • Python中读取文件名中的数字的实例详解

    我们在使用计算机时,我们创建一个个文件夹,可以节省桌面空间,做好整理归纳.python中,每个文件中有着不同的内容,我们要想使用文件,就要读取文件.本文向大家介绍Python读取文件名中的数字的方法:1.使用正则表达式:2.获取匹配的字符串:3.需要整数,可以使用int:4.生成数字. 第一步:可以使用正则表达式 regex = re.compile(r'\d+') 第二步:然后获取匹配的字符串 regex.findall(filename) 这将返回包含数字的字符串列表. 第三步:如果您实际需

随机推荐