18.函数:
用函数实现模块化编程
函数定义:就是实现某一项特定功能的代码块
函数分类:
1.内置函数:python解释器已经写好的函数,我们无需用对象调用,可直接调用
print( ) / input( ) / len( ) / int( ) / str( ) / float( ) / bool( )
sum( ) / max( ) / min( ) / list( ) / tuple( ) / set( ) / dict( )
chr( ) / ord( ) / sorted( ) / type( ) / range( )
网址:https://docs.python.org/zh-cn/3.7/library/functions.html
2.自定义函数:
定义方式: def 关键字(define)
调用方式:函数名加(参数)
注意:函数只有在被调用的时候,才会执行里面的代码。
3.函数的参数:
形参:形式上的参数,你传递是啥,我就是啥
实参:实际传过去的参数
注意:形参和实参**要一 一**对应。
4.函数返回值:
所有函数都有返回值
return有两个作用:
1.将结果返回给调用处
2.结束当前代码
总结:学习一个函数,首先知道它的功能,其次就是两点最重要的:参数和返回值
函数进阶:
1.pass空语句:就是当还不确定函数写什么的时候,可以用pass替代,否则一直会报错
2.关键字参数:当形参与实参没有一 一对应时,就需要使用关键字参数(就是给形参默认值)
3.可变参数:
*参数:表示参数以元组形式返回
**参数:表示参数以字典形式返回
4.关于变量的作用域问题:
1.局部变量:函数内部定义的变量
函数内部变量在外部使用:global
2.全局变量:函数外部定义的变量
5.关于匿名函数:lambda 表达式
直接打印函数名:
语法:lambda 参数列表:表达式
写法:
说明:
① lambda只是一个表达式,函数体比def简单很多
② lambda的主体是一个表达式,而不是一个代码块(所以在lambda表达式中封装的逻辑,很有限)
补充:
1.关于sort( ) 排序:
语法:list.sort(key=None, reverse=False)
说明:
reverse=True 为倒序,默认是正序
key就是用来比较的元素,可以对元素进行设置
写法:
2.关于join()方法:
语法:str.join(序列)
前提是:序列中的元素类型必须是字符串
总结:字符串对象里封装了很多方法,更多地记住这些方法,能够提升编程效率