第九章习题

1、计算程序执行耗时

import time
start_time = time.time()
result = 1
for i in range(1,10000):
    result *= i

end_time = time.time()
print("程序执行耗时:",end_time-start_time)

在这里插入图片描述
2、将时间字符串转换为时间戳

c_time = "2020-03-19 17:31:49"
struct_time = time.strptime(c_time,"%Y-%m-%d %H:%M:%S")
print(struct_time)
timestamp = time.mktime(struct_time)
print("转换时间戳后:",timestamp)

在这里插入图片描述
3、将格式时间字符串转换成时间元组,然后再转换成自定义的时间格式字符串

c_time = "2020-03-19 17:31:49"
struct_time = time.strptime(c_time,"%Y-%m-%d %H:%M:%S")
format_time = time.strftime("%Y-%m-%d %H:%M:%S",struct_time)
print("转换后的时间:",format_time)

在这里插入图片描述
4、将当前时间戳转换为指定格式日期

current_time = time.strftime("%Y-%m-%d %H:%M:%S")
print("当前日期:",current_time)

在这里插入图片描述
5、创建名称为当前时间(年月日)的目录,在这个目录下创建名称为当前时间(年月日)的txt文件,并且输入内容为“你好”

import os
import time
dir_path = "e:\\"+str(time.strftime("%Y%m%d"))
if not os.path.exists(dir_path):
    os.mkdir(dir_path)

os.chdir(dir_path)
print(dir_path)
with open(time.strftime("%Y%m%d")+".txt","w+") as fp:
    fp.write("你好")
    fp.seek(0,0)
    print(fp.read())

在这里插入图片描述
6、获得三天(三小时和三分钟)前的时间方法

import datetime
now = datetime.datetime.now()
s_time = datetime.timedelta(days = -3)
three_days_ago = now + s_time
print("三天前:",three_days_ago)

three_hours_ago = now + datetime.timedelta(hours=-3)
print("三小时前:",three_hours_ago)

three_minutes_ago = now + datetime.timedelta(minutes=-3)
print("三小时前:",three_minutes_ago)

在这里插入图片描述
7、计算昨天和明天的日期

import datetime
now = datetime.datetime.now()
yesterday = now + datetime.timedelta(days=-1)
tomorrow = now + datetime.timedelta(days=1)
print("昨天:",str(yesterday)[:10])
print("明天:",str(tomorrow)[:10])

在这里插入图片描述
8、使用datetime模块来获取当前的日期和时间

import datetime
current_date = datetime.datetime.date(datetime.datetime.today())
print(current_date)

current_time = datetime.datetime.time(datetime.datetime.today())
print(current_time)

在这里插入图片描述
9、创建名称为log的目录,目录下创建三个文件夹,名分别为去年今天的日期、当前日期(年月日)、明年今天的日期,然后分别在这三个目录中创建三个.log文件,名分别为当年的今天在当年中第多少天,文件中分别写入当年的今天是这一年的第几个星期以及当前是星期几。

#encoding=utf-8
import datetime
import os
def time_fun9():
    dict_year=[]
    #获取当前时间
    nowadays=datetime.date.today()
    #定义一个时间间隔为1年
    delta=datetime.timedelta(days=365)

    #将去年、今年和明年datetime对象添加到dict_year数组中
    dict_year.append(nowadays)
    dict_year.append(nowadays-delta)
    dict_year.append(nowadays+delta)

    #创建第一级log目录并进入到此目录下
    if not os.path.exists('log'):#不存在则创建log目录
            os.makedirs('log')
    os.chdir(os.getcwd()+'\\'+'log')

   
    for i in range(len(dict_year)):
        dirname=str(dict_year[i])#生成第二级目录文件名
        filename=str(dict_year[i].strftime("%j"))+'.log'#生成log文件名

        if not os.path.exists(dirname):#不存在则创建目录
            os.mkdir(dirname)

        #进入到新建目录下
        os.chdir(os.getcwd()+'\\'+dirname)
        with open(filename,'w') as fp:
            fp.write('%s是这一年的'%(dirname))
            fp.write('第%s个星期'%(str(dict_year[i].strftime("%W"))))
            fp.write(',今天是星期%s'%(datetime.date.isoweekday(dict_year[i])))
            fp.write('\n')
           
        #进入到父目录下   
        os.chdir("..")
   
if __name__=='__main__':
##    time_fun1()
##    time_fun2_1('2017-12-20 3:10:58')
##    time_fun2_2('2017-12-20 3:10:58')
##    time_fun2_3('2017-12-20 3:10:58')

##    time_fun3_1('2017-12-20 13:10:58')
##    time_fun3_2('2017-12-20 13:10:58')
##    time_fun4_1()
##    time_fun4_2()

##    time_fun5()
##    time_fun6()
##    time_fun7()
   
##    time_fun8()
    time_fun9()

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值