作业:

  1. # 1、编写课上讲解的有参装饰器准备明天默写
  2. def auth(file_type):
  3. def outer(func):
  4. def inter(*args,**kwargs):
  5. if file_type == "file":
  6. res = func(*args,**kwargs)
  7. return res
  8. elif file_type == "mysql":
  9. res = func(*args,**kwargs)
  10. return res
  11. return inter
  12. return outer
  13. # 2:还记得我们用函数对象的概念,制作一个函数字典的操作吗,来来来,
  14. # 我们有更高大上的做法,在文件开头声明一个空字典,然后在每个函数前加上装饰器,完成自动添加到字典的操作
  15. op_dict = {}
  16. def add_op(key_dic):
  17. def outer(func):
  18. def wrapper(*args,**kwargs):
  19. op_dict[key_dic] = func,func.__doc__
  20. res = func(*args,**kwargs)
  21. return res
  22. return wrapper
  23. return outer
  24. @add_op("1")
  25. def withdraw():
  26. """取款"""
  27. print("取款")
  28. print(withdraw)
  29. withdraw()
  30. print(op_dict)
  31. # 3、 编写日志装饰器,实现功能如:一旦函数f1执行,则将消息2017-07-21 11:12:11 f1 run写入到日志文件中,日志文件路径可以指定
  32. # 注意:时间格式的获取
  33. # import time
  34. # time.strftime('%Y-%m-%d %X')
  35. import time
  36. def add_log(file_load):
  37. def outer(func):
  38. def wrapper(*args,**kwargs):
  39. start_time = time.strftime('%Y-%m-%d %X')
  40. msg = f"{start_time} {func} run\n"
  41. with open(file_load,"a",encoding="utf-8") as f:
  42. f.write(msg)
  43. res = func(*args,**kwargs)
  44. return res
  45. return wrapper
  46. return outer
  47. # 4、基于迭代器的方式,用while循环迭代取值字符串、列表、元组、字典、集合、文件对象
  48. # 字符串
  49. s = "字符串"
  50. s_iter = s.__iter__()
  51. while True:
  52. try:
  53. print(s_iter.__next__())
  54. except StopIteration:
  55. break
  56. # 列表
  57. l = [1,2,3,4,4]
  58. l_iter = l.__iter__()
  59. while True:
  60. try:
  61. print(l_iter.__next__())
  62. except StopIteration:
  63. break
  64. # 元祖
  65. t = ("q","w","e","r","d","f")
  66. t_iter = t.__iter__()
  67. while True:
  68. try:
  69. print(t_iter.__next__())
  70. except StopIteration:
  71. break
  72. # 字典
  73. d = {"1":1,"2":2}
  74. d_iter = d.__iter__()
  75. while True:
  76. try:
  77. print(d_iter.__next__())
  78. except StopIteration:
  79. break
  80. # 集合
  81. se = {1,2,3,4}
  82. se_iter = se.__iter__()
  83. while True:
  84. try:
  85. print(se_iter.__next__())
  86. except StopIteration:
  87. break
  88. # 文件对象
  89. with open("a.txt") as f:
  90. while True:
  91. try:
  92. print(f.__next__())
  93. except StopIteration:
  94. break
  95. # 5、自定义迭代器实现range功能
  96. def range(start,stop,step=1):
  97. while start < stop:
  98. yield start
  99. start += step
  100. a = range(1,5,3)
  101. print(next(a))
  102. print(next(a))
  103. print(next(a))

day18作业的更多相关文章

  1. 老男孩Day18作业:后台用户管理

    一.作业需求: 1.用户组的增删改查 2.用户增删该查 - 添加必须是对话框 - 删除必须是对话框 - 修改,必须显示默认值 3.比较好看的页面 二.博客地址:https://www.cnblogs. ...

  2. python day18 作业 Django 开发主机管理系统

    http://www.cnblogs.com/liang2580/p/9248803.html

  3. Day18作业及默写

    人狗大战 #!/usr/bin/env python # encoding: utf-8 # Author: MeiMeiLong <2559184081@qq.com> # Create ...

  4. day18 作业

    目录 1.编写课上讲解的有参装饰器准备明天默写 2.在文件开头声明一个空字典,然后在每个函数前加上装饰器,完成自动添加到字典的操作 3.编写日志装饰器,实现功能如:一旦函数f1执行,则将消息2017- ...

  5. day16正则表达式作业

    1.匹配一篇英文文章的标题 类似 The Voice Of China #([A-Z][a-z]*)( [A-Z][a-z]*)* 2.匹配一个网址 #(https|http|ftp):\/\/[^\ ...

  6. 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】

    点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...

  7. python27期day18:模块和包、作业。

    1.模块和包: 我们今天来讲解一下模块和包,模块我们已经知道是什么东西了,我们现在来看看这个包是个什么? 我说的包可不是女同胞一看见就走不动的包,而是程序中一种组织文件的形式. 只要文件夹下含有__i ...

  8. python day 16作业

    day18天作业及默写1,完成下列功能: 1.1创建一个人类Person,再类中创建3个静态变量(静态字段) animal = '高级动物' soup = '有灵魂' language = '语言' ...

  9. python 作业

    Linux day01 计算机硬件知识整理 作业要求:整理博客,内容如下 编程语言的作用及与操作系统和硬件的关系 应用程序->操作系统->硬件 cpu->内存->磁盘 cpu与 ...

随机推荐

  1. 最简易 Pair of Topics解决方法

    这个题花费了我两天的时间来解决,最终找到了两个比较简单的方法 首先这个题不难看出是寻找a[i]+a[j]<0的情况,我第一开始直接用两个for循环遍历通过不了,应该是复杂度太大了 第一个方法 # ...

  2. 超越Mask-RCNN:谷歌大脑的AI,自己写了个目标检测AI

    这是一只AI生出的小AI. 谷歌大脑的Quoc Le团队,用神经网络架构搜索 (NAS) ,发现了一个目标检测模型.长这样: △ 看不清请把手机横过来 它的准确率和速度都超过了大前辈Mask-RCNN ...

  3. python入门灵魂5问--python学习路线,python教程,python学哪些,python怎么学,python学到什么程度

    一.python入门简介 对于刚接触python编程或者想学习python自动化的人来说,基本都会有以下python入门灵魂5问--python学习路线,python教程,python学哪些,pyth ...

  4. .NET 5 中的正则引擎性能改进(翻译)

    前言 System.Text.RegularExpressions 命名空间已经在 .NET 中使用了多年,一直追溯到 .NET Framework 1.1.它在 .NET 实施本身的数百个位置中使用 ...

  5. [noip模拟]画展<队列的基础知识>

    Description 博览馆正在展出由世上最佳的M位画家所画的图画.人们想到博览馆去看这几位大师的作品.可是,那里的博览馆有一个很奇怪的规定,就是在购买门票时必须说明两个数字,a和b,代表要看展览中 ...

  6. 20175314 实验五 Java网络编程

    20175314 实验五 Java网络编程 一.实验报告封面 课程:Java程序设计 班级:1753班 姓名:薛勐 学号:20175314 指导教师:娄嘉鹏 实验日期:2018年5月31日 实验时间: ...

  7. 完整微信小程序授权登录页面教程

    完整微信小程序授权登录页面教程 1.前言 微信官方对getUserInfo接口做了修改,授权窗口无法直接弹出,而取而代之是需要创建一个button,将其open-type属性绑定getUseInfo方 ...

  8. SpringCloud(二)之我学 Ribbon

    1.负载均衡 Ribbon 虽然不是显示的配置为一个子项目,但是无论是在 API 网关的转发请求,还是服务之间的调用 Feign ,都是通过 Ribbon 来做负载均衡的. 负载均衡,主要是为了对系统 ...

  9. post登录 jsessionid 以及cookie 传递

    先配置登录接口请求 登录成功后: 再其它请求中设置

  10. 一分钟搞定Java高频面试题

    一分钟搞定Java高频面试题 一.变量赋值和计算 题目: public static void main(String[] args) { int i = 1; i = i++; int j = i+ ...