arr = [19,2,30,9,12,90,1,45,23,6,7,8,10,6]
for i in range(len(arr)):
for j in range(1,len(arr)-i):
if(arr[j] < arr[j-1]):
arr[j],arr[j-1] = arr[j-1],arr[j]
print(arr)
def fact(n):
if n==1 or n==0:
return 1
else:
return n*fact(n-1)
def fibonacci(n):
a = 0
b = 1
if n <= 0:
return a
elif n == 1:
return b
else:
for i in range(n-1):
a, b = b, a+b
return b
def fibonacci(n):
if n<=0:
return 0
elif n==1:
return 1
else:
return fibonacci(n-1)+fibonacci(n-2)
a = lambda b : 2*b
print(a(3))
a = lambda x,y : x*2 if x>y else y-2 #三元运算符
print(a(2,3))
dic = {'a':1, 'c':2, 'b':3}
def dicSorted(dic, isReverse=False):
dic = sorted(dic.items(), key=lambda x: x[1], reverse=isReverse)
return {k: v for k, v in dic}
print(dicSorted(dic,False))
list01 = [
{'name':'zhnag','age':19},
{'name': 'lisi', 'age': 20},
{'name': 'wagnwu', 'age': 17}
]
def listDictSorted(list, param, isReverse=True):
dic = sorted(list, key=lambda x: x[age], reverse=isReverse)
return dic
print(listDictSorted(list01,'age'))
'''
高阶函数
'''
list01 = [1,2,5,6]
list02 = map(lambda x:x*2, list01);
print(list(list02))
list01 = [1,2,5,6]
list02 = [1,3,5,6]
list03 = map(lambda x,y:x*y, list01, list02);
print(list(list03))
from functools import reduce
list04 = reduce(lambda x,y: x+y, list02)
print(list04)