1、函数的语法规则
实例:平方函数,输入变量 x 返回其平方值 x2
2、lambda函数
- 简化的函数定义方式
- lambda只是一个表达式,函数体比def简单很多。
- lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
- lambda表达式是起到一个函数速写的作用。
3、局部变量
- 局部变量是指那些有固定的变量作用域,只有在此作用域内才能调用此变量。具体而言,比如函数内的局部变量的作用域仅限于函数内。以下建立一个新的函数,命名为mean(),用于求平均
4、全局变量 - 全局变量是相对局部变量而言的作用范围在全局,即在初始定义赋值后,无论是函数、类、lambda函数内都可以引用全局变量。在关键词 def、class、lambda 之外定义的变量,都作为全局变量。
- 在上面的mean()函数内定义的length变量移至关键词 def之外即变为全局变量:
5、局部变量转为全局变量 - 有时候会有在函数内定义的局部变量在函数外引用的需求,比如前面的mean()函数中最开始"length"定义时是局部变量,现只需要在定义变量时使用关键词"global"即可将其定义为全局变量
6、同名变量引用 - 当某局部变量和全局变量都有相同变量名时,函数内引用该变量会直接调用函数内定义的局部变量。
7、模块简介 - 第三方工具包
Pandas:数据处理与分析
Numpy:科学计算
BeautifulSoup4:处理HTML文档
Matplotlib:绘图
Scikit-learn:基于SciPy和Numpy的开源机器学习模块
Tensorflow:深度学习框架
8、Python程序架构
- Python程序的构架指:将一个程序分割为源代码文件的集合以及将这些部分连接在一起的方法
- Python源代码文件:*.py
一个py文件是一个模块(module)
多个模块可以组成一个包(package)
- 模块的执行环境:模块包含变量、函数、类以及其他的模块(如果导入的话),而函数也有自己的本地变量,下图为模块内的情况及模块的交互
9、模块的作用
- 模块是Python中的最高级别组织单元,它将程序代码和数据封装起来以便重用
- 模块的三个角色:
代码重用;
系统命名空间的划分(模块可理解为变量名的封装,即模块就是命名空间);
实现共享服务和数据;
10、模块的导入 - 导入从本质上讲,就是在一个文件中载入另一个文件,并且能够读取那个文件的内容。一个模块内的内容通过这样的方法其属性(object,attribute)能够被外界使用
- 通过这一句,计算机就在指定的位置找到了"numpy.py"文件,并准备好该文件拥有的之后会用到的函数和属性。在导入"numpy"后,我们就可以通过点符号"."连接模块名称和函数名,使用该模块中的函数和属性。
- 别名
指定的方式是采用"import 模块名称 as 别名"。我们可以将"numpy"简记为"np",并且在调用时,直接使用"np"就可以:
- 只导入某个对象
此过程的实现方式是“from 模块名称 import 函数名称",但是要注意我们只拿到了某个具体的工具,而没有拿到整个工具箱
11、类
- 用 class 类名 即可以创建一个类
- 在类名的程序块中可以定义这个类的属性、方法等等