python读取文件夹下具有某个后缀的文件名(python读取文件夹下所

http://www.itjxue.com  2023-04-02 15:55  来源:未知  点击次数: 

想用python实现提取文件夹里特定后缀名文件的程序,该怎么实现?

这里要用到winrar这个软件。首先用winrar打开以上的那个文件夹所在目录,然后单击“文件夹名.{208d2c60-3aea-1069-a2d7-08002b30309d}”把“.{208d2c60-3aea-1069-a2d7-08002b30309d}”这个后缀去掉,ok,回到这个目录,看,文件夹恢复了!

Python怎么获取当前目录指定扩展名的文件名

import os

import os.path

ext=input('请输入你要显示的文件的扩展名(如.py):')

print([f for f in os.listdir() if os.path.isfile(f) and os.path.splitext(f)[1]==ext])

Python 拿来直接用的7个os读写文件的操作!网友:建议收藏!

在学习真实案例之前,我们先来了解一下Python文件操作的一些基本概念~~

如何创建读取和写出的文件对象,open()方法来搞定

他有两个参数,第一个就是读取的文件名称,第二个是可选的,指的是打开文件的模式,默认是读取文件。

当我们获取到读取文件对象fin之后我们就可以读取文件内容了,这里介绍两种方式。

第一种是直接读取文件内容,

第二种是按行读取文件内容。

区别在于如果你的文件非常大,如果直接读取效率会非常低下,甚至会撑爆内存。

所以按行读取按行处理就不会因为文件过大而产生问题了

文件读取完成之后写出文件有如下方式:

'\n'的意思是我们手动换行

最后关闭文件有两种方式

为什么要关闭文件呢?

如果不关闭他就会持续打开状态,琐事其他进程后者线程要操作它的时候就会报错

我们有时候写入非常大的数据的时候打开文件后会发现数据不是最新的?

这是因为python在写出文件是先写到内存中,等到一定的事件之后或者文件到达一定的数量之后才会写入到磁盘

所以我们如果想要看最新的数据,可直接调用如下方法

接下来我们使用数据进行测试

1. 文件读操作

文件读、写操作比较常见。读取文件,要先判断文件是否存在。

若文件存在,再读取;不存在,抛出文件不存在异常。

文件存在情况:

文件不存在情况:

open 后,务必要 close,这种写法有些繁琐,还容易出错。借助 with 语法,同时实现 open 和 close 功能,这是更常用的方法。

2.获取文件的后缀名

如何优雅地获取文件后缀名?os.path 模块,splitext 能够优雅地提取文件后缀。

3. 批量修改文件后缀名

修改之前

修改文件后缀名的文件方法如下:

从修改之后:

4. 获取文件名

有时拿到一个文件名时,名字带有路径。这时,使用 os.path、split 方法实现路径和文件的分离。

我们还可以直接使用使用os.path 模块,splitext 提取文件后缀名。

5.获取以指定后缀结尾的文件

当我们想要查询某路径下所有以固定后缀结尾的文件时,可以使用如下方法

6.?批量修改文件后缀名

后缀名批量修改,实现思路:

1. 遍历目录下的所有文件

2. 获取文件的后缀名

3. 如果后缀名命中为 old_ext,rename 重命名

defbatch_rename(work_dir,?old_ext,?new_ext):

"""

传递当前目录,原来后缀名,新的后缀名后,批量重命名后缀

7. 批量获取文件修改时间

os.walk 生成文件树结构,os.path.getmtime 返回文件的最后一次修改时间:

python 获取文件后缀名

我写了个小文件,希望能帮到楼主

=========count_file.py=============

#coding:utf-8

import os

'''

使用os.walk()统计文件类型

'''

#定义result字典用来存储

result = {}

for directory, folders, files in os.walk('/home/zhulei'):

for f in files:

if '.' in f:

#获得文件类型

file_type = f.rsplit('.',1)[1]

if result.has_key(file_type):

result[file_type] += 1

else:

result[file_type] = 1

print "文件类型\t\t个数"

print "="*40

for type, count in sorted(result.items(),key=lambda x:x[1],reverse=True):

if len(type) = 8:

print "%s\t\t%s" % (type, count)

else:

print "%s\t\t\t%s" % (type, count)

==============================

运行结果:

%python count_file.py

文件类型 个数

========================================

png 2107

c 1639

h 1276

py 1160

gif 1017

svn-base 966

TXT 899

jpg 831

html 539

...

...

...

(责任编辑:IT教学网)

更多
上一篇:没有了

推荐word文章