博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
新手小白 python之路 Day6 (装饰器、生成器、迭代器)
阅读量:6826 次
发布时间:2019-06-26

本文共 1577 字,大约阅读时间需要 5 分钟。

简单的整理了下装饰器、生成器、迭代器

#!/usr/bin/env python# -*- coding:utf-8 -*-# Author: linghanchujianimport time# 装饰器def fun(function):    def funs(*args,**kwargs):        Start_Time = time.time()        res=function(*args,*kwargs)        End_Time = time.time()        print("run fun time is %s"%(End_Time-Start_Time))        return res    return funs    passdef func():    time.sleep(0.5)    print("the is func!!")    pass@fun # 相当于  func1 = fun(func1)def func1(name):    func()    time.sleep(0.5)    print("the is func1!!",name)    return 100    passprint(func1("Linghanchujian")) #实际上执行的是funs()这个函数# 装饰器def func3(isFunc):    def func4(Func):        def func5(*args,**kwargs):            if isFunc:                print("isFunc is True!!")                res = Func(*args, **kwargs)            else:                print("isFunc is False!!")                res = Func(*args, **kwargs)            return res            pass        return func5        pass    return func4    pass@func3(isFunc=True)def func(Name):    print("the is func!! My name is %s"%Name)    pass@func3(isFunc=False)def func1(Name,age):    print("the is func1!! My name is %s and age is %s"%(Name,age))    passfunc("Linghanchujian")func1("Linghanchujian",22)# 列表生成器array = [i*2 for i in range(10)]  # 会一次性生成所有列表数据 可以通过 array[i] 来取值print(array[8])array1 = (i*2 for i in range(10)) # 不会生成数据,只会创建地址保存算式 可以通过 __next__() 一个个取值 但是一般是用 for infor j,k in enumerate(array1):    if j==8:        print(k)        break # 直接打印def SeriseOne(Max):    i,a,b,c = 0,0,1,0    while i

 

转载于:https://www.cnblogs.com/Linghanchujian/p/7207609.html

你可能感兴趣的文章
批处理中的call与start的个人学习心得
查看>>
搜索引擎的前世今生
查看>>
JSP
查看>>
经典排序算法 - 地精排序Gnome Sort
查看>>
mysql rand函数
查看>>
24种编程语言的Hello World程序
查看>>
Java中main函数参数String args[] 和 String[] args 区别
查看>>
Jarvis Oj Pwn 学习笔记-Tell Me Something
查看>>
【WP7进阶】——XNA游戏精灵的动画
查看>>
cat echo 输入多行文字至文本中
查看>>
puppet FAQ
查看>>
linux 基础命令(1)
查看>>
MySQL学习足迹记录01--SOURCE,SHOW
查看>>
tomcat安装配置
查看>>
Struts2.0+Hibernate2.5+Spring3.0搭建JavaEE项目要用的jar
查看>>
2013互联网公司,年终奖有几何?
查看>>
互联网
查看>>
MySQL load data 权限相关
查看>>
ScriptManager.RegisterStartupScript失效的解决方案
查看>>
vsftpd 添加用户
查看>>