python+os根据文件名自动生成文本

yipeiwu_com7年前Python基础

有时我们有很多文件(如图片),我们需要对每一个文件进行操作。

我们还需要一份文件的名字来进行遍历,这时我们首先需要建立一份文件名单,有时还会对文件名做一定的筛选,如我们只选择jpg格式的图片。

本文就是利用一个文件夹下的几张图片完成这些操作:把所有文件名写入到一个文件中。

这可以进一步用来遍历处理数据

#! usr/bin/env python
# coding: utf-8

# 为了自动获取文件夹下的名字并将其写入文件,然后利用该文件来处理对应的文件


import os
import numpy as np
import cv2


# 先进行路径操作
currentRoot = os.getcwd() # 当前路径
imgRoot = currentRoot + '/img' # 图片所在的路径
os.chdir(imgRoot) # 切换到图片所在的路径


# 开始读取文件并将其名称写入一个文件
fileNames = open('imgName.txt','w') # 将要写入文件名的文件, w表示write
file = os.listdir(imgRoot) # 读取某个文件夹下的所有文件
for i in file: #采用文件句柄的方式遍历文件
 if os.path.splitext(i)[1]=='.jpg': # 判断是否是jpg文件,我们只对jpg文件进行操作
 data = str(i) + '\n' # 将文件名和换行放在一起,文件名采用相对路径
 fileNames.write(data) # 开始写入文件
fileNames.close() # 最后关掉文件

运行代码,可得到一个文件,可看下图

文件内容如下:

如果重新运行一次代码,发现文件内容不会变化。
其实这时候文件夹中已经有了imgName这个文件,但是其扩展名为txt,所以并不会被利用。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Python中的装饰器、闭包和functools的教程

装饰器(Decorators) 装饰器是这样一种设计模式:如果一个类希望添加其他类的一些功能,而不希望通过继承或是直接修改源代码实现,那么可以使用装饰器模式。简单来说Python中的装饰...

Python日期的加减等操作的示例

本文介绍了Python日期的加减等操作的示例,分享给大家,也给自己留个笔记 1. 日期输出格式化 所有日期、时间的api都在datetime模块内。 1. datetime =>...

ML神器:sklearn的快速使用及入门

ML神器:sklearn的快速使用及入门

传统的机器学习任务从开始到建模的一般流程是:获取数据 -> 数据预处理 -> 训练建模 -> 模型评估 -> 预测,分类。本文我们将依据传统机器学习的流程,看看在...

python使用正则表达式提取网页URL的方法

本文实例讲述了python使用正则表达式提取网页URL的方法。分享给大家供大家参考。具体实现方法如下: import re import urllib url="//www.jb51...

Python3.5文件修改操作实例分析

Python3.5文件修改操作实例分析

本文实例讲述了Python3.5文件修改操作。分享给大家供大家参考,具体如下: 1、文件修改的两种方式 (1)像vim一样将文件加载到内存中,修改完之后再写回源文件。 (2)打开文件,修...