python读取文件名称生成list的方法


本文摘自php中文网,作者不言,侵删。

下面为大家分享一篇python读取文件名称生成list的方法,具有很好的参考价值,希望对大家有所帮助。一起过来看看吧

经常需要读取某个文件夹下所有的图像文件。

我使用python写了个简单的代码,读取某个文件夹下某个后缀的文件,将文件名生成为文本(csv格式)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

import fnmatch

import os

import pandas as pd

import numpy as np

import sys

InputStra = sys.argv[1]

InputStrb = sys.argv[2]

def ReadSaveAddr(Stra,Strb):

 #print(Stra)

 #print(Strb)

 print("Read :",Stra,Strb)

 a_list = fnmatch.filter(os.listdir(Stra),Strb)

 print("Find = ",len(a_list))

 df = pd.DataFrame(np.arange(len(a_list)).reshape((len(a_list),1)),columns=['Addr'])

 df.Addr = a_list

 #print(df.head())

 df.to_csv('Get.lst',columns=['Addr'],index=False,header=False)

 print("Write To Get.lst !")

ReadSaveAddr(InputStra,InputStrb)

上面代码保存为:GetLst.py

使用时:

在cmd窗口输入:

1

python GetLst.py F:/train/pos *.png

发现上面代码不能深入到下一层目录,又做了点修改:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

def ReadSaveAddr2(Stra,Strb):

 df = pd.DataFrame(np.arange(0).reshape(0,1),columns=['Addr'])

 print(df)

 path = InputStra

 for dirpath,dirnames,filenames in os.walk(path):

  #for filename in filenames:

  a_list = fnmatch.filter(os.listdir(dirpath),Strb)

  if len(a_list):

   dft = pd.DataFrame(np.arange(len(a_list)).reshape((len(a_list),1)),columns=['Addr'])

   dft.Addr = a_list

   dft.Addr = dirpath + '\\' + dft.Addr#输出绝对路径

   frames = [df,dft]

   df = pd.concat(frames)

   print(df.shape)

 df.to_csv('Get.lst',columns='Addr'],index=False,header=False)

 print("Write To Get.lst !")

相关推荐:

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

以上就是python读取文件名称生成list的方法的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python的while如何使用

Python如何求1到100的奇数和

Python函数之divmod数字处理函数

Python笔试题之设计“跳一跳”小游戏计分器

Python 的 help 函数使用

简要概括Python if多条件判断语句的特点

Python中变量与输入输出的总结(代码示例)

如何找到一个目录下所有.txt文件

Python编程通过蒙特卡洛法计算定积分详解

Python编程时如何添加中文注释

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...