Python异常
所谓异常,通俗理解就是报错、BUG等,异常具有传递性,即这里没抓住你,就在下一个地方抓住你,要是每个地方都没捕捉到异常,程序将会报错。
语法:
try:
print(1)
except Exception as e:
print(e)
else:
print('我是else,是没有异常的时候执行的代码')
finally:
print('我是无论如何都要执行的代码')
#捕获异常
try:
print(name)
except:
#捕获并输出各类异常
try:
print(name)
except (NameError, ZeroDivisionError) as e:
print(e)
#捕获所有异常
try:
print(name)
except Exception as e:
print(e)
#捕获但如果没有异常
try:
print(1)
except Exception as e:
print(e)
else:
print('我是else,是没有异常的时候执行的代码')
#finally
try:
print(1)
except Exception as e:
print(e)
else:
print('我是else,是没有异常的时候执行的代码')
finally:
print('我是无论如何都要执行的代码')
Python包
包就是一个文件夹,里面可以存放许多Python的模块(代码文件),通过包,在逻辑上将一批模块归为一类,方便使用。 创建包会默认自动创建__init__.py文件,通过这个文件来表示一个文件夹是Python的包,而非普通的文件夹。__all__变量可以控制 import * 能够导入的内容。可以自己新建包,也可以安装第三方的包。
常用第三方包:
科学计算中常用的:numpy包
数据分析中常用的:pandas包
大数据计算中常用的:pyspark、apache-flink包
图形可视化常用的:matplotlib、pyecharts
人工智能常用的:tensorflow
安装方法:
打开CMD输入: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名称
Python模块
模块就是一个Python文件,里面有类、函数、变量等,我们可以直接拿过来用,是一个 Python 文件,以 .py 结尾。
当导入多个模块的时候,且模块内有同名功能. 当调用这个同名功能的时候,调用到的是后面导入的模块的功能,不同模块,同名的功能,如果都被导入,那么后导入的会覆盖先导入的。
导入方式:(from可省略)
(1)import 模块名
如果要使用模块中的功能就用:
模块名.功能或者模块名.变量等
(2)from 模块名 import 类、变量、方法等直接使用函数或变量
如果要使用模块中的功能就
(3)from 模块名 import *
使用模块中的所有功能
(4)import 模块名 as 别名
使用模块中的所有功能:
别名.功能或者别名.变量等
(5) from 模块名 import 功能名 as 别名
使用模块中的所有功能:
功能别名.功能或者功能别名.变量等
自定义模块:
(1)__main__
只在当前文件中调用该函数,其他导入的文件内不符合该条件,则不执行test函数调用,例如:
if __name__ == '__main__':
test (1, 1)
只有在main.py文件中才会执行这个if。
(2) __all__`
如果一个模块文件中有`__all__`变量,当使用`from xxx import *`导入时,只能导入这个列表中的元素,例如:
__all__=['fun1()','fun2()']