1.函数的定义
1.1.def
格式:def 函数名(参数):
print(需要打印的数值或者字符串)
函数调用:函数名(参数)
def a(x):
print(x)
a('hello')
结果:hello
def a():
print('hello')
a()
结果:hello
1.2.pass
直接通过,什么都不执行
for i in 'hello':
if i == 'e':
pass
print('这是pass')
print('这个是:',i)
结果:
这个是: h
这是pass
这个是: e
这个是: l
这个是: l
这个是: o
1.3.return
后面可以返回任意表达式,但不能是赋值语句
return没有写返回值的话,默认None(代表为空)
return 和 print 的区别,return是函数的返回值,返回值可以赋值给变量,而print只是打印出来
def a(e):
return (e)
b = a(100)
print(b)
结果:100
def a():
return (120)
b = a()
print(b)
结果:120
2.函数参数
2.1.必备参数
在函数调用的时候,必备参数必须要传入
格式:def 函数名(参数名):
print(参数名)
调用:函数名()
()里面放什么,输出就输出什么
def a(b):
print(b)
a('hi')
结果:hi
2.2.默认参数
默认参数要位于必备参数列表的后面
在函数调用的时候,默认参数可以不传入值,不传入值时,会使用默认参数
格式:def 函数名(参数名,参数名=数值或者字符串):
print(参数名,参数名)
调用:函数名(参数名,参数名=数值或者字符串)
()里面放什么,输出就输出什么
def a(a,b='hi'):
print(a,b)
a('hello')
结果:hello hi
a('hello','word')
结果:hello word
3.不定长参数
在函数调用的时候,不定长参数可以不传入,也可以传入任意长度。
其中定义时,元组形式可以放到参数最前面,字典形式只能放到最后面
3.1.*args
可以传字符串、数值、列表、集合、元组
格式:def 函数名(*args):
print(args)
调用格式:函数名(‘字符串’,[列表],(元组),数值)
def a(*args):
print(args)
a('hello',[1,2],(1,2),{1,2})
结果:'hello',[1,2],(1,2),{1,2}
3.2.**kwargs
提供给字典专用
格式:def 函数名(**kwargs):
print(kwargs)
调用格式:函数名(键名=键值)
def a(**kwargs):
print(kwargs)
a(a=1,b=2,c='as')
结果:{'a': 1, 'b': 2, 'c': 'as'}
3.简单内置函数
3.1.len 长度
格式:变量=[]
print(len(变量))
a = [1,2,3,4]
print(len(a))
结果:4
3.2.min 最小值
格式:变量=[]
print(min(变量))
a = [1,2,3,4]
print(min(a))
结果:1
3.3.max 最大值
格式:变量=[]
print(mix(变量))
a = [1,2,3,4]
print(max(a))
结果:4
3.4.sorted 升序
格式:变量=[]
print(sorted(变量))
a = [5,1,2,3,4]
print(sorted(a))
结果:[1, 2, 3, 4, 5]
3.5.reversed 反向
a = [5,1,2,3,4]
print(list(reversed(a)))
结果:[4, 3, 2, 1, 5]
3.6.sum 求和
格式:变量=[]
print(sum(变量))
a = [5,1,2,3,4]
print(sorted(a))
结果:15
3.7.进制转换函数
bin转换为二进制、oct转换为八进制、hex转换为十六进制、ord字符转ASCII码、chrASCII码转字符
格式:print(进制函数(数值))
4.高级内置函数
4.1.enumerate
返回一个可以枚举的对象
a = ['一','二','三','四']
print(list(enumerate(a)))
结果:[(0, '一'), (1, '二'), (2, '三'), (3, '四')]
a = ['一','二','三','四']
print(list(enumerate(a,1)))#下标从1开始
结果:[(1, '一'), (2, '二'), (3, '三'), (4, '四')]
4.2.eval
取出字符串中的内容
将字符串str当成有效的表达式来求指并返回计算结果(类型一样是字符串)
格式:变量=’’
print(eval(变量))
a= '1+2+3'
print(eval(a))
print(type(a))#查看a是什么类型
结果:6,<class 'str'>
4.3.exec
执行字符串编译过的字符串(得出的结果一样是字符串类型)
格式:变量1=数值,变量2=数值
exec(‘变量3=变量1+变量2’)
print(变量3)
a=1
b=2
exec('c=a+b')
print(c)
print(type('c'))
结果:3,<class 'str'>
4.4.filter 过滤器
print(list(filter(所需判断的函数名,所需过滤的数组)))
a = [1,2,3,4]
def b(c):
return c>2
print(list(filter(b,a)))
结果:[3, 4]
4.5.map
对于参数iterable中的每个元素都应用fuction函数,并将结果作为列表返回
print(list(map(函数名,所需过滤的数组)))
a = [1,2,3,4]
def b(c):
return c * 2
print(list(map(b, a)))
结果:2,4,6,8,10,12
a = [1,2,3,4]
def b(c):
return c > 2
print(list(map(b, a)))
结果:[False, False, True, True]
4.6.zip
将对象逐一配对
print(list(map(函数名,所需过滤的数组)))
a = [1,3]
b = [2,3]
print(list(zip(a,b)))
结果:[(1, 2), (3, 3)]