python从现有文件中获取信息

来源:千锋教育
发布时间:2023-11-06 16:18:58
分享

使用Python中的模块,可以从现有文件中获取信息。使用“os”模块和“stat”模块可以获取文件的基本信息:

importos

importstat

importtime

fileStats=os.stat('test.txt')

fileInfo={

'Size':fileStats[stat.ST_SIZE],

'LastModified':time.ctime(fileStats[stat.ST_MTIME]),

'LastAccessed':time.ctime(fileStats[stat.ST_ATIME]),

'CreationTime':time.ctime(fileStats[stat.ST_CTIME]),

'Mode':fileStats[stat.ST_MODE]

}

forinfoField,infoValueinfileInfo:

printinfoField,':'+infoValue

ifstat.S_ISDIR(fileStats[stat.ST_MODE]):

print'Directory.'

else:

print'Non-directory.'

上面这个例子创建了一个包含文件基本信息的dictionary。然后显示了相关信息,并且告诉我们打开的是否为目录。我们也可以试一下打开的是否是其它几种类型:

importos

importstat

fileStats=os.stat('test.txt')

fileMode=fileStats[stat.ST_MODE]

ifstat.S_ISREG(fileStats[stat.ST_MODE]):

print'Regularfile.'

elifstat.S_ISDIR(fileStats[stat.ST_MODE]):

print'Directory.'

elifstat.S_ISLNK(fileStats[stat.ST_MODE]):

print'Shortcut.'

elifstat.S_ISSOCK(fileStats[stat.ST_MODE]):

print'Socket.'

elifstat.S_ISFIFO(fileStats[stat.ST_MODE]):

print'Namedpipe.'

elifstat.S_ISBLK(fileStats[stat.ST_MODE]):

print'Blockspecialdevice.'

elifstat.S_ISCHR(fileStats[stat.ST_MODE]):

print'Characterspecialdevice.'

另外,我们可以使用“os.path”来获取基本信息:

importos.path

fileStats='test.txt'

ifos.path.isdir(fileStats):

print'Directory.'

elifos.path.isfile(fileStats):

print'File.'

elifos.path.islink(fileStats):

print'Shortcut.'

elifos.path.ismount(fileStats):

print'Mountpoint.'

以上内容为大家介绍了python从现有文件中获取信息,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • python之避免resolv.conf设置被覆盖 resolv.conf文件简介/etc/resolv文件是系统指定dns服务器地址的配置文件。下面简称resolv.conf当系统进行域名解析时,会先读取resolv.conf文件中设置的DNS地址,
  • Python语言 Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,具有20多年的发展历史,成熟且稳定。Python具有以下特点(摘自《AByteofPython》,中译名《简明Python教程》):
  • Python装饰器器的写法以及应用场景 含义:装饰器本质就是函数,为其他函数添加附加功能原则:不修改被修饰函数的代码不修改被修饰函数的调用方式应用场景:无参装饰器在用户登录认证中常见有参装饰器在flask的路由系统中见到过importfun
  • Python粘包 什么是粘包?socket中造成粘包的原因是什什么?哪些情况会发生粘包现象?只有TCP有粘包现象,UDP永远不会粘包粘包:在获取数据时,出现数据的内容不是本应该接收的数据,如:对方第一次发送hello,
  • Python之select、poll、epoll模型的区别 select、poll、epoll模型的区别?(属于多路复用IO的模型)都是i/o多路复用的机制,监视多个socket是否发生变化,本质上都是同步i/oselect,poll实现需要自己不断轮询所有监
  • Python进程、线程、协程的区别 简述进程、线程、协程的区别以及应用场景?线程是指进程内的一个执行单元,#进程进程拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程由操作系统调度。#线程线程拥有自己独立的栈和共享的堆,共享堆,不共享栈