导航:首页 > 文件类型 > python遍历文件夹中的文件

python遍历文件夹中的文件

发布时间:2023-01-19 03:39:19

❶ 如何利用Python遍历文件

import os
import os.path
rootdir = “d:\data” # 指明被遍历的文件夹

for parent,dirnames,filenames in os.walk(rootdir): #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字
for dirname in dirnames: #输出文件夹信息
print "parent is:" + parent
print "dirname is" + dirname

for filename in filenames: #输出文件信息
print "parent is": + parent
print "filename is:" + filename
print "the full name of the file is:" + os.path.join(parent,filename) #输出文件路径信息

#windows下为:d:\data\query_text\EL_00154

❷ 用python遍历一个文件夹下的文件给出两个参数表示时间,如何挑选这两个时间段之间的文件

listdir( path )列出当前path路径下的所有文件
getctime( file ) 得到file的创建时间(秒),另外getmtime得到文件的修改
gmttime( seconds ) 把getctime得到的秒数转换为一个gmtime结构体
datetime()构造日期函数,把gmtime结构体的内容穿进去,就得到了可比较时间的datetime对象
[ file for item,file in listdate if (starttime < item < endtime) ]
把满足 starttime < item < endtime 条件的文件选取出来就可以了。

from time import gmttime
from datetime import datetime
from os.path import getctime
form os import listdir

def listdir(path, starttime, endtime ):
if not isinstance(starttime, datetime)
raise TypeError
if not isinstance(endtime, datetime)
raise TypeError
if starttime > endtime:
starttime, endtime = endtime, starttime
listtime = [ (gmtime(getctime(file)),file) for file in listdir( path ) ]
listdate = ([datetime( t.tm_year, t.tm_mon, t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec ),file) for t, file in listtime]
return [ file for item,file in listdate if (starttime < item < endtime) ]

❸ python如何遍历文件夹然后生成md5

importos,hashlib

defgetlistdir(path):
try:#如果path是一个文件的完整名称,os.listdir会抛出错误
fl=os.listdir(path)
exceptExceptionase:
fl=[]
finally:
returnfl

defgetallfile(path):
allfile=[]
fl=getlistdir(path)
iflen(fl)!=0:
fl=list(map(lambdax:path+'\'+x,fl))
allfile=allfile+fl
forfinfl:
allfile=allfile+getallfile(f)
returnallfile

defmakemd5(stri):
md5=hashlib.md5()
md5.update(stri.encode('utf-8'))
returnmd5.hexdigest()

defmain():
myfilelist=getallfile('.')#获取当前文件'.'中的所有文件和文件夹名list
myfilestr='|'.join(myfilelist)#文件list转换为以'|'分隔的字符串
print(myfilestr)#显示要进行md5摘要加密的字符
print("md5=",makemd5(myfilestr))#计算并显示md5码

main()

❹ 求教python怎么遍历指定文件

监控目录 -- 分两个部分: 1. 扫描目录文件, 保持当前状态数据; 2. 状态数据的比较



importos
importfnmatch


defgetfileinfo(filename):
(mode,ino,dev,nlink,
uid,gid,size,atime,mtime,ctime)=os.stat(filename)
returndict(
modifytime=mtime,
createtime=ctime,
size=size,
)


classDirectoryMonitor(object):

def__init__(self,path,fnexp="*.*"):
self.path=path
self.fnexp=fnexp
self.files={}
self.scan()

defscan(self):
currentfiles={}
forpath,dirs,filesinos.walk(self.path):
forfinfnmatch.filter(files,self.fnexp):
fullname=os.path.join(path,f)
currentfiles[fullname]=getfileinfo(fullname)
lastfiles=self.files
self.files=currentfiles
returnself.check(lastfiles,currentfiles)

@staticmethod
defcheck(lastfiles,currfiles):
monitor={}
newer={}
forfinset(currfiles)-set(lastfiles):
newer[f]=currfiles[f]
ifnewer:
monitor["newer"]=newer
deleted={}
forfinset(lastfiles)-set(currfiles):
deleted[f]=lastfiles[f]
ifdeleted:
monitor["deleted"]=deleted
changed={}
forfinset(lastfiles)&set(currfiles):
iflastfiles[f]!=currfiles[f]:
changed[f]=currfiles[f]
ifchanged:
monitor["changed"]=changed
returnmonitor


deftester():
importtime
dm=DirectoryMonitor(r"/home/tim/data","*.txt")
time.sleep(20)
m=dm.scan()
ifm:
printm


if__name__=="__main__":
tester()

❺ Python中如何遍历指定目录下的所有文件

例如:在C:\TDDOWNLOAD目录下有a.txt、b.txt两个文件,另有\sub1子文件夹,C:\TDDOWNLOAD\sub1下又有c.txt、d.txt两个文件。
1.
os.walk
os.walk()返回一个三元素的tuple:当前路径、子文件夹名称、文件列表。>>>
import
os>>>
def
fun(
path
):...
for
root,
dirs,
files
in
os.walk(
path
):...
for
fn
in
files:...
print
root,
fn...
>>>
fun(
r'C:\TDDOWNLOAD'
)C:\TDDOWNLOAD
a.txtC:\TDDOWNLOAD
b.txtC:\TDDOWNLOAD\sub1
c.txtC:\TDDOWNLOAD\sub1
d.txt>>>
2.
glob.glob
glob.glob()只接受一个参数,这个参数既代有路径,又代有匹配模式,返回值为一个列表。注意,glob.glob()无法直接穿透子文件夹,需要自己处理:>>>
def
fun(
path
):...
for
fn
in
glob.glob(
path
+
os.sep
+
'*'
):
#
'*'代表匹配所有文件...
if
os.path.isdir(
fn
):
#
如果结果为文件夹...
fun(
fn
)
#
递归...
else:...
print
fn...
>>>
fun(
r'C:\TDDOWNLOAD'
)C:\TDDOWNLOAD\a.txtC:\TDDOWNLOAD\b.txtC:\TDDOWNLOAD\sub1\c.txtC:\TDDOWNLOAD\sub1\d.txt>>>
'*'为匹配模式,代表匹配所有文件,只有这样才能将子文件夹查出来,以便递归深入,探查下一层的文件。

❻ 如何用python遍历文件夹下的所有excel文件

大数据处理经常要用到一堆表格,然后需要把数据导入一个list中进行各种算法分析,简单讲一下自己的做法:

1.如何读取excel文件

网上的版本很多,在xlrd模块基础上,找到一些源码:

[python]view plain

❼ 我想用python脚本实现一个文件夹的遍历找到该文件夹下的空文件夹以及带有一个文件的文件夹

importos
arr=[]
#os.walk()返回三个数组main当前目录名sub下级目录名name下级文件名
formain,sub,nameinos.walk("C:Intel"):
iflen(sub)==0andlen(name)<2:
arr.append(main)
print(arr)

❽ python或者bat怎么遍历文件夹下所有文件和文件夹然后修改后缀

先遍历所有文件:

fromosimportwalk

f=[]
for(dirpath,dirnames,filenames)inwalk(mypath):
f.extend(filenames)
break
阅读全文

与python遍历文件夹中的文件相关的资料

热点内容
如何找编程类的工作 浏览:286
jsp从mysql读取时间 浏览:680
有什么app可以存app 浏览:603
游戏编程从哪里学的 浏览:738
win8文件布局 浏览:308
数据存储参数配置文件 浏览:122
面膜去哪个网站买好 浏览:627
天下游旧版本 浏览:622
iphone6按键震动 浏览:528
u盘没有显示怎么打开文件夹 浏览:13
win7升级win10激活失败 浏览:914
win10系统文件缺失介质修复 浏览:900
怎么样系统升级 浏览:518
魔客吧传奇网站模板 浏览:365
一段代码解决html多浏览器兼容 浏览:803
淘车大师app官方下载 浏览:953
win10系统怎么能找回桌面文件 浏览:423
换主板怎么装驱动程序 浏览:563
宜搜小说旧版本 浏览:310
win10净网大师 浏览:262

友情链接