函数
def sum_2(a,b):
return a+b
result = sum_2(9,8)
def power(x, n=2):
return x**n
a = power(4,3)
b = power(5,3)
c = power(6)
print(c)
print(b)
print(a)
a = int('16', 8)
print(a)
def infos(name,age=24,gender='女'):
return '大家好,我叫%s ,我今年%d岁,我是一名%s生'%(name,age,gender)
s = infos('mia',24,'女')
lily = infos('lily')
jack = infos('jack',gender='男')
print(jack)
print(lily)
def total(*args):
print(args)
result = 0
for i in args:
result += i*i
return result
result = total(1,4,5,6,7,8,3)
print(result)
result = total(3,4,5)
a = [1,2,3,4,5]
result = total(*a)
print(result)
def f(**kwargs):
for k,v in kwargs.items():
print(k,v)
d = {'name':'xiaoming','age':18}
f(**d)
变量作用域
num1 = 10
list1 = [1,2,3,4,5]
def f():
global num1
num2 = 20
num1 = 20
list1[2] = 8
print('在函数f中打印num1的值',num1)
print('在函数f中打印list1的值',list1)
print('num2的值',num2)
f()
print('在函数f执行后打印num1的值',num1)
print('在函数f执行后打印list1的值',list1)
匿名函数
a = [1,2,3,4,5]
result = map(lambda x:x**3, a)
print(list(result))
from functools import reduce
result = reduce(lambda x,y:x*y,a)
print(result)
result = filter(lambda x:x%2,a)
print(list(result))
a = [1,2,3,40,5,6,0,6,0,5]
result = filter(lambda x:x!=0,a)
print(list(result))
result = 0
mul = 1
for i in a[::-1]:
result = result + i*mul
mul = mul*10**len(str(i))
print(result)
result = reduce(lambda x,y:x*10**len(str(y))+y,a)
print(result)
上台阶
def f(n):
if n==0:
return 0
elif n==1:
return 1
elif n==2:
return 2
return f(n-1)+f(n-2)
print('楼梯有%d阶的时候,有%d种走法'%(5,f(5)))
a = [0,1,2]
for i in range(3,11):
a.append( a[i-1] + a[i-2])
print('楼梯有%d阶的时候,有%d种走法' % (i, a[-1]))