9、015
字符
#.format()可以接受未知参数和关键字参数,例如'{0} love {1}'.format('I','You')
'I love You'
'{a} love {b}'.format(a = 'I',b = 'You')
'I love You'
10、016
序列
#list()可以将字符串或元组转换成一个列表,例如a = 'I Love You'
a = list(a)
a
['I', ' ', 'L', 'o', 'v', 'e', ' ', 'Y', 'o', 'u']
b = (1,2,3,4)
b = list(b)
b
[1,2,3,4]
#tuple()可以将字符串或列表转换成一个元组,同上
#str()可以转换为字符串
#len()可以查看长度
#max()可以返回序列或参数集合中的最大值
#min()可以返回序列或参数集合中的最小值
#sum()可以计算序列或参数集合中所有值的和,只有同一类型才可以相加,例如sum(b)
10
#sorted()可以将序列或参数集合中所有值进行排序
#enumerate()可以将序列或参数中所有元素及元素的位置打印出来,例如:list(enumerate(b))
[(0, 1), (1, 2), (2, 3), (3, 4)]
#zip()将两个列表成对打包
11、017
函数(params)
函数定义,例如:def MyFirstFunction():
print('I Love You')
调用函数,例如:MyFirstFunction()
I Love You
函数的参数调用,例如:def MySecondFunction(name):
print(name + '是傻子')
MySecondFunction('小米')
小米是傻子
12、018
#._doc_查看函数的函数文档,例如:def MyFirstFunction():
'这个不显示'
print('I Love You')
MyFirstFunction._ _doc_ _
'这个不显示'
关键字参数可以让输入的实参更准确的找到形参,例如:def music(name,time):
print(name + '时长为' + time)
music(time = '3:12',name = '说好不哭')
说好不哭时长为3:12
收集参数
在参数前面加个*表示多个参数,例如:def test(*params):
print('这个参数的最大值为:',max(params));
print('最小值为:',min(params))
test(10,1,2,7,9)
这个参数的最大值为: 10
最小值为: 1
13、019
局部函数只有在它使用的函数中才能被访问,而全局变量在整段代码中任何位置都可以访问,但全局变量不能再函数里被修改。
14、020
#global 关键字,使用global可以使局部变量变成全局变量。
内嵌函数,python内部是允许函数的嵌套的,例如:def fun1():
print('函数fun1被调用了')
def fun2():
print('函数fun2被调用了')
fun2()
fun1()
函数fun1被调用了
函数fun2被调用了
闭包,就是在一个函数里的函数中有调用外部的变量,则称这个函数为闭包函数,例如:def funX(x):
def funY(y):
return x * y
return funY
funX(8)(5)
40
#nonlocal可以在闭包函数中将局部变量变成全局变量,例如:def fun3():
x=5
def fun4():
nonlocal x
x *= x
return x
return fun4()
fun3()
25
15、021
匿名函数(lambda)
lambda的定义:lambda x : 2 * x + 1
g = lambda x : 2 * x + 1
g(3)
7
#filter()可以过滤元素,例如:list(filter(lambda x : x % 2,range(10)))
[1, 3, 5, 7, 9]
#map()印射,可以将后面可迭代的元素带入前一个函数中,例如:list(map(lambda x : x * 2,range(10)))
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
16、022
递归
def factorial(n):
if n == 1:
return 1
else:
return n * (factorial(n - 1))
number = int(input('请输入一个正整数:'))
result= factorial(number)
print("%d 的阶层是: %d" % (number,result))
运行后得出:5的阶层是120
17、023
递归例子:
def fab(n):
if n < 1:
print('输入错误')
return -1
if n==1 or n==2:
return 1
else:
return fab(n - 1) + fab(n - 2)
resut = fab (20)
if result !=-1
print('总共有%d只!'% result)