假设有一大堆人,这其中分了很多小群体。每个小群体都有自己的首领。比如a、b、c、d是一个小群体。其中a是头儿,b是a的下属,c和d都是b的下属。 那么我们可以这样写:b->a,表示b的上级是a。 c->b,d->b,表示c和d的上级都是b。 这其实就已经是并差集了。稍微抽象一下,字母替换为数字,用一 ...
分类:
其他好文 时间:
2020-02-26 20:33:33
阅读次数:
94
1、 需求1 定义一个print_line函数能够打印*组成的一条分割线 def print_line(char): print("*" * 50) 需求2 定义一个函数能够打印 由任意字符组成的分割线 def print_line(char): print(char * 50) 需求3 定义一个函 ...
分类:
其他好文 时间:
2020-02-23 21:56:28
阅读次数:
113
/** 1、闭包的概念 闭包可是指有权访问另一函数作用域中的变量的函数,或者简单理解为定义在一个函数内部的函数; **//** 2、闭包的特点 a、函数嵌套函数 b、函数内部可以引用函数外部的参数和变量 b、参数和变量不会被垃圾回收机制回收 **//** 3、闭包的优缺点 优点: ①保护函数内的变量 ...
分类:
其他好文 时间:
2020-02-23 19:59:31
阅读次数:
83
装饰器的原则 1)不修改被修饰函数的源代码; 2)不修改被修饰函数的调用方式; 装饰器的知识点 = 高阶函数 + 函数嵌套 + 闭包 1. 只用高阶函数写装饰器 >有瑕疵 import time def foo(): print('this is foo') # return foo def tim ...
分类:
编程语言 时间:
2020-02-13 12:31:26
阅读次数:
65
1、装饰器定义:本质就是一个函数,功能是为其它函数添加附加功能。 2、装饰器原则:1)不修改被装饰函数的源代码,2)不修改被装饰函数调用方法。 装饰器=高阶函数+函数嵌套+闭包 例: import timedef timmer(func): #定义装饰器函数 def wapper(): start_ ...
分类:
其他好文 时间:
2020-02-01 12:35:53
阅读次数:
63
函数嵌套 一、函数的嵌套定义 函数内部定义的函数,无法在函数外部使用内部定义的函数。 现在有一个需求,通过给一个函数传参即可求得某个圆的面积或者圆的周长。也就是说把一堆工具丢进工具箱内,之后想要获得某个工具,直接从工具箱中获取就行了。 circle(10): 314.1592653589793 ci ...
分类:
其他好文 时间:
2020-01-29 16:27:28
阅读次数:
86
#装饰器:本质就是函数,为其他函数附加功能原则:1、不修改被修饰函数的源代码2、不修改被修饰函数的调用方式装饰器=高阶函数+函数嵌套+闭包 #高阶函数 ''' 高阶函数定义: 1、函数接受的参数是一个函数名 2、函数的返回值是一个函数名 3、满足上述条件任意一个,都可称之为高阶函数 ''' # 函数 ...
分类:
编程语言 时间:
2020-01-29 16:10:36
阅读次数:
102
1.1 def outer(): a = 1 def inner(): print(a) a += 1 print('inner ') inner() outer() 内部函数可以使用外部函数的变量。 # python3 nonlocal 1.2 闭包: 嵌套的函数,内部函数调用外部函数的变量。 1 ...
分类:
其他好文 时间:
2020-01-26 11:49:36
阅读次数:
79
为什么要用promise 1.使用纯回调函数 先指定回调函数,再启动异步任务 答 1.指定回调函数的方式更加灵活 可以在执行任务前,中,后 2.支持链式调用,解决回调地狱问题 什么是回调地狱:回调函数嵌套使用,下一层回调函数依赖上一层回调函数的结果 解决方案。promise链式 终极解决方案 asy ...
分类:
其他好文 时间:
2020-01-21 00:54:26
阅读次数:
114
函数的动态参数 1.函数的动态参数 位置参数,默认参数 动态参数的作用 args ? 1.能够接受不固定长度参数 ? 2.位置参数过多时可以使用动态参数 动态参数的用法: def eat(a,b, args): 位置参数,动态位置参数 eat("面条","包子","饺子","馅饼",”馒头“) 按照 ...
分类:
编程语言 时间:
2020-01-20 20:41:30
阅读次数:
112