Python:获取目录中所有文件和文件夹的列表、创建时间、上次修改时间。独立于系统的解决方案?
这既是一个挑战,也是一个问题: 我有一个数据文件文件夹。 我想要以下信息列表:Python:获取目录中所有文件和文件夹的列表、创建时间、上次修改时间。独立于系统的解决方案?,python,datetime,directory,last-modified,filetime,Python,Datetime,Directory,Last Modified,Filetime,这既是一个挑战,也是一个问题: 我有一个数据文件文件夹。 我想要以下信息列表: Filename: Created: Last modified: Information = [ [datafile1, Mon Mar 04 10:45:24 2013, Tue Mar 05 12:05:09 2013], [datafile2, Mon Mar 04 11:23:02 2013, Tue Apr 09 10:57:5
Filename: Created: Last modified:
Information =
[
[datafile1, Mon Mar 04 10:45:24 2013, Tue Mar 05 12:05:09 2013],
[datafile2, Mon Mar 04 11:23:02 2013, Tue Apr 09 10:57:55 2013],
[datafile2.1, Mon Mar 04 11:37:21 2013, Tue Apr 02 15:35:58 2013],
[datafile3, Mon Mar 04 15:36:13 2013, Thu Apr 18 15:03:25 2013],
[datafile4, Mon Mar 11 09:20:08 2013, Mon May 13 16:30:59 2013]
]
我得到信息后可以自己分类。
是否有人可以编写此函数:
def get_information(directory):
.
.
.
return Information
这些职位很有用:
(一)
(二)
(三)
(四)
(五)
(六)
然而:我觉得必须存在一个更好的、更可重用的解决方案,它可以在windows和linux上工作 我知道一个事实,
os.stat
在windows
和linux
上都能很好地运行
文件
但是,为了适应您的功能,您可以执行以下操作:
您可以使用st_atime
访问最近的访问,并使用st_ctime
访问文件创建时间
import os,time
def get_information(directory):
file_list = []
for i in os.listdir(directory):
a = os.stat(os.path.join(directory,i))
file_list.append([i,time.ctime(a.st_atime),time.ctime(a.st_ctime)]) #[file,most_recent_access,created]
return file_list
print get_information("/")
我在一台mac电脑上,我得到了这个
[['.dbfseventsd', 'Thu Apr 4 18:39:35 2013', 'Thu Apr 4 18:39:35 2013'], ['.DocumentRevisions-V100', 'Wed May 15 00:00:00 2013', 'Sat Apr 13 18:11:00 2013'],....]
对已确认-这也适用于windows并生成相同的输出。其他线程应该知道这个答案。我们应该链接到它,或者复制它。@Doug当然可以,请便。但是任何链接到这个问题的线程都会同时链接到相应的线程。对于我来说,atime和ctime都会返回创建日期。我的文件在Windows8.1NTFS目录下,我正在运行Python 2.7