day18 作业
1、编写课上讲解的有参装饰器准备明天默写
def auth(login_type):
def outter(func):
def warpper(*args,**kwargs):
func(*args,**kwargs)
if login_type=="mysql":
print("基于数据库")
elif login_type=="file":
print("基于文件")
return warpper
return outter
@auth("mysql")
def my_mysql():
print("我是数据库函数")
@auth("file")
def my_file():
print("我是文件函数")
my_mysql()
my_file()
2、在文件开头声明一个空字典,然后在每个函数前加上装饰器,完成自动添加到字典的操作
d = {}
def d_append(n):
def outter(func):
d[n] = [func.__name__, func]
def warpper():
func()
return warpper
return outter
@d_append(0)
def index():
print("我是主页")
@d_append(1)
def footer():
print("我是尾页")
print(d)
3、编写日志装饰器,实现功能如:一旦函数f1执行,则将消息2017-07-21 11:12:11 f1 run写入到日志文件中,日志文件路径可以指定
import time
def timmer(func):
def warpper(*args,**kwargs):
func(*args,**kwargs)
file_path = input("请输入文件路径:")
with open(f"{file_path}","a",encoding="utf-8") as f :
f.write(time.strftime(f'%Y-%m-%d %X {func.__name__} run\n'))
return warpper
@timmer
def f1():
print("我是f1")
@timmer
def f2():
print("我是f2")
f1()
f2()
4、基于迭代器的方式,用while循环迭代取值字符串、列表、元组、字典、集合、文件对象
str1 = "hzisdsb"
list1 = [1,2,3,4]
dict1 = {"a":1,"b":2}
set1 = {1,2,3}
tuple1 = (1,2,3,)
def my_for(type,count=0):
iteration = type.__iter__()
while count<len(type):
print(iteration.__next__())
count+=1
my_for(str1)
my_for(list1)
my_for(dict1)
my_for(set1)
my_for(tuple1)
with open("a.txt","r",encoding="utf-8")as f :
while True:
try:
print(f.__next__())
except StopIteration:
break
5、自定义迭代器实现range功能
def my_rang(start,stop,step=1):
while start<stop:
yield start
start+=step
res = my_rang(1,100,1)
print(res.__next__())
print(res.__next__())
print(res.__next__())
day18 作业的更多相关文章
- 老男孩Day18作业:后台用户管理
一.作业需求: 1.用户组的增删改查 2.用户增删该查 - 添加必须是对话框 - 删除必须是对话框 - 修改,必须显示默认值 3.比较好看的页面 二.博客地址:https://www.cnblogs. ...
- day18作业
作业: # 1.编写课上讲解的有参装饰器准备明天默写 def auth(file_type): def outer(func): def inter(*args,**kwargs): if file_ ...
- python day18 作业 Django 开发主机管理系统
http://www.cnblogs.com/liang2580/p/9248803.html
- Day18作业及默写
人狗大战 #!/usr/bin/env python # encoding: utf-8 # Author: MeiMeiLong <2559184081@qq.com> # Create ...
- day16正则表达式作业
1.匹配一篇英文文章的标题 类似 The Voice Of China #([A-Z][a-z]*)( [A-Z][a-z]*)* 2.匹配一个网址 #(https|http|ftp):\/\/[^\ ...
- 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】
点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...
- python27期day18:模块和包、作业。
1.模块和包: 我们今天来讲解一下模块和包,模块我们已经知道是什么东西了,我们现在来看看这个包是个什么? 我说的包可不是女同胞一看见就走不动的包,而是程序中一种组织文件的形式. 只要文件夹下含有__i ...
- python day 16作业
day18天作业及默写1,完成下列功能: 1.1创建一个人类Person,再类中创建3个静态变量(静态字段) animal = '高级动物' soup = '有灵魂' language = '语言' ...
- python 作业
Linux day01 计算机硬件知识整理 作业要求:整理博客,内容如下 编程语言的作用及与操作系统和硬件的关系 应用程序->操作系统->硬件 cpu->内存->磁盘 cpu与 ...
随机推荐
- Cypress系列(0)- 如何学习 Cypress
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 前言 Cypress 未来很有可能会火的 ...
- shell编程(一):功能、执行、基础
1.shell的功能 (1)自动化批量初始化系统:对N台系统初始化(装系统时对系统的时区.yum源.软件包的更新.安全的设置进行初始化) (2)自动化批量部署软件程序:(LAMP/LNMP/Tomca ...
- Python 读取和输出到txt
读txt文件 python常用的读取文件函数有三种read().readline().readlines() read() #一次性读取文本中全部的内容,以字符串的形式返回结果 with open(& ...
- 第m大的身份证号码(局部排序代全局、结构体排序)
第m大的身份证号码(点击) 时间限制: 1 Sec 内存限制: 128 MB ...
- UI 自动化环境搭建
1,pip install selenium 2,驱动放在放在 Python 的根目录下
- mysql关于group by的用法
原文:https://blog.csdn.net/u014717572/article/details/80687042 先来看下表1,表名为test: 表1 执行如下SQL语句: SELECT na ...
- rust 学习之旅二,关键字和保留字
当前,以下关键字具有所描述的功能. as-执行原始类型转换,消除包含项目的特定特征的歧义,或在useand extern crate语句中重命名项目async-返回a Future而不是阻塞当前线程a ...
- 【K8s学习笔记】K8s是如何部署应用的?
本文内容 本文致力于介绍K8s一些基础概念与串联部署应用的主体流程,使用Minikube实操 基础架构概念回顾 温故而知新,上一节[K8S学习笔记]初识K8S 及架构组件 我们学习了K8s的发展历史. ...
- Java前端面试题总结
Java前端面试题总结 简单说一下HTML,CSS,javaScript在网页开发中的定位? HTML:超文本标记语言,定义网页的结构 CSS:层叠样式表,用来美化页面 JavaScript:主要用来 ...
- springcloud2.0 添加配置中心遇到的坑
新手入门,在springcloud 配置config的时候遇到了几个比较烦的坑 先说1.5x版本的一些配置吧 首先是端点暴露的方式 management: security: enabled: fal ...