函数笔记
装饰器: 先来个形象比方 内裤可以用来遮羞,但是到了冬天它没法为我们防风御寒, 聪明的人们发明了长裤,有了长裤后宝宝再也不冷了, 装饰器就像我们这里说的长裤,在不影响内裤作用的前提下,给我们的身子提供了保暖的功效。 def num(funk): def num_3(): print('穿') print('秋') print('裤\n') funk() print('\n穿') print('秋') print('裤') return num_3 @num def num_1(): print('我是内裤') num_1() 多层装饰 def num_4(funk): def num_5(): funk() print('\n穿1 ') print('秋') print('裤') return num_5 def num(funk): def num_3(): print('穿') print('秋') print('裤\n') funk() return num_3 @num @num_4 def num_1(): print('我是内裤') num_1()
递归:
晚上,给4岁的女儿讲这幅漫画《父与子---祖先画廊》。 我啰啰嗦嗦地讲了半天: “ 这幅是爸爸和儿子; 这幅是爷爷和爸爸; 这幅是爷爷的爸爸和爷爷; 这幅是爷爷的爷爷和爷爷的爸爸; 这幅是爷爷的爷爷的爸爸和爷爷的爷爷; 这幅是爷爷的爷爷的爷爷和爷爷的爷爷的爸爸。 ” 然后女儿一脸懵逼,说道:“这几幅画不都是父与子吗!” def num(a): print(a) if a == 800: return a a += 1 num(a) num(0) a = 1 while a < 800: a += 1 print(a)
斐波那契数: def num_1(a,b): print(a) c = a + b num_1(b,c) num_1(0,1)
冒泡排序 简介为了准确来自百度百科,代码来自自己学习后实践: 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名。 冒泡排序算法的运作如下:(从后往前) 1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3.针对所有的元素重复以上的步骤,除了最后一个。 4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 list_1 = [11,33,43,54,354,54,35,45,234234,112,6657,7654768,432412,8790,55,4433,22,222,79,98,75,4,33,3334,5,34,534,5,3,5,3,54,32,4,234,65,6,45,1,3411,345,7,8,9,8,6,] for j in range(1,len(list_1)): for i in range(len(list_1)-j): if list_1[i] > list_1[i+1]: temp = list_1[i] list_1[i] = list_1[i+1] list_1[i+1] = temp print(list_1)