1,将装饰器的所有知识点总结完成,将这几天的作业再整理一遍,还是不会的,就抄代码,一遍不行就三遍,直到所有知识点,所有题都整明白。

2,有时间就画流程图,梳理知识点。

3,上面两项完成的写以下作业。

4,给每个函数写一个记录日志的功能,

功能要求:每一次调用函数之前,要将函数名称,时间节点记录到log的日志中。

所需模块:

import time
struct_time = time.localtime()
print(time.strftime("%Y-%m-%d %H:%M:%S",struct_time))
# 所需要的模块
# import time
# struct_time = time.localtime()
# print(time.strftime("%Y-%m-%d %H:%M:%S",struct_time)) import time
status_dic ={
"username":None,
"status":False,
} def wrapper(func):
def inner(*args,**kwargs):
struct_time= time.localtime()
now_time = time.strftime("%Y - %m -%d %H:%M:%S",struct_time)
status_dic["username"]="萌哥"
status_dic["status"]=True
if status_dic["status"]:
with open("log","a",encoding="utf-8")as f1:
f1.write("%s 在%s时,调用了%s 函数\n" %(status_dic["username"],now_time,func.__name__))
ret = func(*args,**kwargs)
return ret
return inner
@wrapper
def graph():
print("绘图功能")
@wrapper
def login():
print("登录功能")
graph()
time.sleep(3)
login() 运行结果
萌哥在2018 02 23 20:54:38 时调用了graph 函数
萌哥在2018 02 23 20:54:41 时调用了login 函数

5,在编写装饰器,为多个函数加上认证的功能(用户的账号密码来源于文件),要求登录成功一次,后续的函数都无需再输入用户名和密码。这个作业之上进行升级操作:

设置两套密码,一套为京东账号密码,一套为淘宝账号密码保存在文件中。

设置四个函数,分别代表 京东首页,京东超市,淘宝首页,淘宝超市。

循环打印四个选项:东首页,京东超市,淘宝首页,淘宝超市。

供用户选择,用户输入选项后,执行该函数,四个函数都加上认证功能,只要登陆成功一次,在选择其他函数,后续都无需输入用户名和密码。

相关提示:用带参数的装饰器。装饰器内部加入判断,验证不同的账户密码。

Day 12 作业.(完成)的更多相关文章

  1. Windows Internals 笔记——作业

    1.Windows提供了一个作业内核对象,它允许我们将进程组合在一起并创建一个“沙箱”来限制进程能够做什么.创建只包含一个进程的作业同样非常有用,因为这样可以对进程施加平时不能施加的限制. 2.如果进 ...

  2. 【转】Talend作业设计模式和最佳实践-Part I

    原文地址:https://mp.weixin.qq.com/s?__biz=MzA3OTg1Mzk4Nw==&mid=2453261363&idx=2&sn=e0f426022 ...

  3. Python基础(一),Day1

    python的安装 python2.x与3.x的部分区别 第一个python程序 变量 字符编码 注释 格式化字符串 用户输入 常用的模块初始 if判断 循环语句 作业 1.python的安装 可以在 ...

  4. [实变函数]5.6 Lebesgue 积分的几何意义 $\bullet$ Fubini 定理

    1 本节推广数学分析中的 Fubini 定理. 为此, 先引入 (1)(从低到高) 对 $A\subset \bbR^p, B\subset\bbR^q$, $$\bex A\times B=\sed ...

  5. 传智播客C语言视频第二季(第一季基础上增加诸多C语言案例讲解,有效下载期为10.5-10.10关闭)

    卷 backup 的文件夹 PATH 列表卷序列号为 00000025 D4A8:14B0J:.│  1.txt│  c语言经典案例效果图示.doc│  ├─1传智播客_尹成_C语言从菜鸟到高手_第一 ...

  6. 传智播客C语言视频第一季(有效下载期为10.1-10.7,10.8关闭)

     J:\传智播客_尹成_C语言从菜鸟到高手├─传智播客_尹成_C语言从菜鸟到高手_第一章C语言概述A│      第一讲1.1C语言第一阶段.mp4│      第二讲1.2c语言入门教程.mp4 ...

  7. 第四周小组作业:Wordcount优化

    1.小组github地址 https://github.com/muzhailong/wcPro 2.PSP表格 PSP2.1 PSP阶段 预计耗时(分钟) 实际耗时(分钟) Planning 计划 ...

  8. 《Windows核心编程》读书笔记 上

    [C++]<Windows核心编程>读书笔记 这篇笔记是我在读<Windows核心编程>第5版时做的记录和总结(部分章节是第4版的书),没有摘抄原句,包含了很多我个人的思考和对 ...

  9. s11 day104 数据库表结构与立即支付流程

    数据库表结构: 13张 1. 课程大类 2.课程子类 3.学位课程 4.老师表 5.奖学金 6.专题课 7.课程详情 8.课程大纲 9.常见问题 10.章节 11.课时 12.作业表 13.价格策略 ...

随机推荐

  1. 关于block元素和inline元素

    呃...这个会不会太基础了.最近在复习,所以基础知识也不能够忽略. 根据HTML 4.01 规范,其描述如下(http://www.w3.org/TR/html401/struct/global.ht ...

  2. 20-java 对象链表空没空呢

    写了一个 对象链表,往里面add了一些对象,最后我想看下链表是否为空,用  == null  为假,也看不出, 看下长度? 好吧, size() = 1: 打印  null ,  那到底是不是空 啊, ...

  3. 批量去重URL地址并剔除打不开网址

    #coding=utf-8 import os import httplib import socket dictlist ={}; def ReadHost(): hosts = []; obn = ...

  4. linux 下 php 安装 pthreads

    1.下载pthreads的源码包 https://pecl.php.net/package/pthreads 如:pthreads-3.1.6.tgz 2.解压 > tar zxvf pthre ...

  5. python激活码

  6. DNA甲基化研究概述

    DNA甲基化研究概述 生信技能树 已关注 2018.01.23 11:43 字数 993 阅读 183评论 0喜欢 1 DNA甲基化(DNA methylation)是最早被研究的重要表观遗传修饰之一 ...

  7. 去掉字符串前后的空格和Tab

    <script language=Javascript>function String.prototype.Trim() {return this.replace(/(^\s*)|(\s* ...

  8. JavaScript的replace方法与正则表达式结合应用讲解

    大家好!!今晚在华软G43*宿舍没什么事做,把javascript中replace方法讲解一下,如果讲得不对或不合理是情理之中的事,因为我不是老鸟,也不是菜鸟,我也不知道我当底是什么鸟??呵~~ re ...

  9. Warning: Attempt to present A on B whose view is not in the window hierarchy!

    昨天写豆瓣发广播Demo的时候,为了写Demo的简单,就使用了Storyboard,结果执行视图跳转时遇到了这个问题: Warning: Attempt to present <UINaviga ...

  10. java实现从url路径中下载pdf文档到本地

    package com.cellstrain.icell.util; import java.io.*;import java.net.*; public class DownloadPdf { /* ...