[英]Extract each year, month, day, year from getctime , getmtime in Python
我想从下面的值中分别提取年月日小时分钟。
import os, time, os.path, datetime
date_of_created = time.ctime(os.path.getctime(folderName))
date_of_modi = time.ctime(os.path.getmtime(folderName))
现在我只能得到如下 'Thu Dec 26 19:21:37 2019' 但我想分别获得 2019 年的值 // 十二月(我可以把它作为整数吗??)// 每个 26
我想从 date_of_created 和 date_of_modi 中提取每年月日每次最小值我能得到吗? 在蟒蛇?
您可以将字符串转换为日期时间对象:
from datetime import datetime
date_of_created = datetime.strptime(time.ctime(os.path.getctime(folderName)), "%a %b %d %H:%M:%S %Y") # Convert string to date format
print("Date created year: {} , month: {} , day: {}".format(str(date_of_created.year),str(date_of_created.month),str(date_of_created.day)))
time.ctime([secs])
将自纪元以来以秒表示的时间转换为以下形式的字符串: 'Sun Jun 20 23:21:05 1993' 表示当地时间。
如果那不是你想要的……用别的东西? time.getmtime
将返回一个struct_time
,它应该具有相关字段,或者对于更现代的界面,使用datetime.datetime.fromtimestamp
......从 UNIX 时间戳返回一个datetime
对象。
此外,使用stat
可能会更有效,因为 ctime 和 mtime 可能会在内部分别执行stat
调用。
您可以使用 datetime 模块,更具体地说是 datetime 模块中的fromtimestamp()
函数来获得您所期望的。
import os, time, os.path, datetime
date_of_created = datetime.datetime.fromtimestamp(os.path.getctime(my_repo))
date_of_modi = datetime.datetime.fromtimestamp(os.path.getmtime(my_repo))
print(date_of_created.strftime("%Y"))
对于 2020 年创建的回购,输出将是2020
年。
所有格式均可在此链接中找到
time.ctime
函数以string
形式返回本地时间。 您可能想要使用time.localtime
函数,该函数返回一个struct_time
对象,其中包含您要查找的信息。 例如,
import os, time
date_created_string = time.ctime(os.path.getctime('/home/b-fg/Downloads'))
date_created_obj = time.localtime(os.path.getctime('/home/b-fg/Downloads'))
print(date_created_string) # Mon Feb 10 09:41:03 2020
print('Year: {:4d}'.format(date_created_obj.tm_year)) # Year: 2020
print('Month: {:2d}'.format(date_created_obj.tm_mon)) # Month: 2
print('Day: {:2d}'.format(date_created_obj.tm_mday)) # Day: 10
请注意,根据要求,这些是integer
数值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.