首页 > 编程语言 >python异常、模块与包

python异常、模块与包

时间:2024-07-01 10:29:53浏览次数:20  
标签:python 程序 Python 模块 异常 第三方

目录

了解异常

什么是异常
当检测到一个错误时,python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的“异常”,也就是我们常说的BUG

bug单词的诞生
早期计算机采用大量继电器工作,马克二型计算机就是这样的。
1945年9月9日,下午三点,马克二型计算机无法正常工作了,技术人员试了很多办法,最后定位到第70号继电器出错,负责人哈珀观察这个出错的继电器,发现一只飞蛾躺在中间,已经被继电器打死,她小心地用镊子将蛾子夹出来,用透明胶布贴到“事件记录本”中,并注明“第一个发现虫子的实例”自此之后,引发软件失效的缺陷,便被称为Bug。

异常演示
在这里插入图片描述

异常的捕获方法

为什么要捕获异常
世界上没有完美的程序,任何程序在运行的过程中,都有可能出现:异常,也就是bug,
导致程序无法完美运行下去。

我们要做的,不是求程序完美运行。
而是在力所能及的范围内,对可能出现的bug,进行提前准备、提前处理。

这种行为我们称之为:异常处理(捕获 异常)

当我们的程序遇到了BUG,那么接下来有两种情况:
① 整个程序因为一个BUG停止运行
② 对BUG进行提醒,整个程序继续运行

显然在之前的学习中,我们所有的程序遇到BUG就会出现①的这种情况,也就是整个程序直接奔溃但是在真实工作中,我们肯定不能因为一个小的BUG就让整个程序全部奔溃,也就是我们希望的是达到② 的这种情况那这里我们就需要使用到捕获异常

捕获异常的作用在于:提前假设某处会出现异常,做好提前准备,当真的出现异常的时候,可以有后续手段。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
异常的传递
在这里插入图片描述

在这里插入图片描述

python模块

什么是模块
Python 模块(Module),是一个 Python 文件以 .py 结尾.模块能定义函数,类和变量,模块里也能包含可执行的代码.

模块的作用:python中有很多各种不同的模块,每一个模块都可以帮助我们快速的实现一些功能,比如实现和时间相关的功能就可以使用time模块我们可以认为一个模块就是一个工具包,每一个工具包中都有各种不同的工具供我们使用进而实现各种不同的功能.

大白话:模块就是一个Python文件,里面有类、函数、变量等,我们可以拿过来用(导入模块去使用)

模块的导入方式
常用的组合形式如:
● import 模块名
● from 模块名 import 类、变量、方法等
● from 模块名 import *
● import 模块名 as 别名
● from 模块名 import 功能名 as 别名

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

python包

什么是python包
从物理上看,包就是一个文件夹,在该文件夹下包含了一个**init.py文件**,该文件夹可用于包含多个模块文件
从逻辑上看,包的本质依然是模块

在这里插入图片描述
包的作用:
当我们的模块文件越来越多时,包可以帮助我们管理这些模块,包的作用是包含多个模块,但包的本质依然是模块
在这里插入图片描述

注意:新建包后,包内部会自动创建 init .py文件,这个文件控制着包的导入行为

在这里插入图片描述
在这里插入图片描述

安装第三方包

什么是第三方包
我们知道,包可以包含一堆的Python模块,而每个模块又内含许多的功能
所以,我们可以认为:一个包,就是一堆同类型功能的集合体。

在Python程序的生态中,有许多非常多的第三方包(非Python官方),可以极大的帮助我们提高开发效率,如:
● 科学计算中常用的:numpy包
● 数据分析中常用的:pandas包
● 大数据计算中常用的:pyspark、apache-flink包
● 图形可视化常用的:matplotlib、pyecharts
● 人工智能常用的:tensorflow
● 等
这些第三方的包,极大的丰富了Python的生态,提高了开发效率。
但是由于是第三方,所以Python没有内置,所以我们需要安装它们才可以导入使用哦。

安装第三方包 - pip
第三方包的安装非常简单,我们只需要使用Python内置的pip程序即可。

打开我们许久未见的:命令提示符程序,在里面输入:
pip instal 包名称
即可通过网络快速安装第三方包
在这里插入图片描述

pip网络优化
由于pip是连接的国外的网站进行包的下载,所以有的时候会速度很慢。

我们可以通过如下命令,让其连接国内的网站进行包的安装:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名称

在这里插入图片描述

https://pypi.tuna.tsinghua.edu.cn/simple 是清华大学提供的一个网站,可供pip程序下载第三方包

安装第三方包 - pycharm
pycharm也提供了安装第三方包的功能:
在这里插入图片描述

标签:python,程序,Python,模块,异常,第三方
From: https://blog.csdn.net/fj123789/article/details/140077569

相关文章

  • 模块化编程(二)
    模块的导入经常有这样一句话:“不要重复造轮子”,知道别人已经造好了轮子,并且轮子也好用,那就直接拿别人的轮子来用,此处的“模块导入”就是“拿别人的轮子过来”。前文提到模块化编程的好处之一就是“代码复用性高”。写好的模块可以被反复调用,模块的导入就是“在本模块中使用其......
  • 【python零基础入门到就业】002、2024最新windows环境下python的下载和安装
    文章目录1.引言2.检查是否已安装Python3.在Windows上安装Python3.1下载Python安装包3.2安装Python3.3验证安装4.结语1.引言在开始编写Python代码之前,我们首先需要在计算机上安装Python。本文将详细介绍如何在Windows系统上下载和安装Python。2......
  • Python离线下载并安装包及其依赖
    1,安装pipdeptree:PSD:\test>pipinstallpipdeptree2,假如想在内网安装flask,先在外网下载安装:PSD:\test>pipinstallflask3,使用pipdeptree查看并生成requirements.txtPSD:\test>pipdeptree-f-pflaskFlask==1.1.2click==7.1.2itsdangerous==1.1.0Jinja2==2.11.2......
  • [oeasy]python0023_[趣味拓展]Guido的简历_从ABC到python
    Guido的简历......
  • 详述Python环境下配置AI大模型Qwen-72B的步骤
    随着人工智能技术的发展,大规模预训练模型如Qwen-72B等逐渐成为研究和应用的重点。本篇博客旨在提供一份详细的指南,帮助Python开发者们在自己的环境中顺利配置并使用Qwen-72B大模型。请注意:由于Qwen-72B这一模型目前并未公开存在,所以以下内容仅为假设性描述,实际上你需要替换为......
  • 中台框架模块开发实践-用 Admin.Core 代码生成器生成通用代码生成器的模块代码
    前言之前分享中台Admin.Core的模块代码生成器,陆续也结合群友们的反馈,完善了一些功能和模板上的优化,而本篇将基于此代码生成器生成一个通用代码生成器模块的基本代码后续再在此代码的基础上进行完善,制作一个通用的代码生成器要做一个项目,首先我们要弄清楚需求,这里简单规划了......
  • 蓝桥杯python数组排序
    题目:资源限制内存限制:512.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s问题描述给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200输入格式第一行为一个整数n。第二行包含n个整数,为待排序的数,每个整数的绝对值小于1......
  • python 无监督生成模型
    无监督生成模型在机器学习中扮演着重要角色,特别是当我们在没有标签数据的情况下想要生成新的样本或理解数据的内在结构时。一种流行的无监督生成模型是生成对抗网络(GenerativeAdversarialNetworks,GANs)。1.python无监督生成模型GANs由两部分组成:一个生成器(Generator)和一个......
  • 【Effective Python教程】(90个有效方法)笔记——第3章:函数——24:用None和docstring来描
    文章目录第3章:函数第24条用None和docstring来描述默认值会变的参数函数默认值的坑(函数的默认参数值只在定义函数时计算)解决方法:将函数默认参数值设为None,然后再在函数体中判断并初始化函数默认参数值设置为None的其他应用示例“函数默认参数值设置为None”与“函数参数......
  • 每日一题——Python实现PAT乙级1023 组个最小数(举一反三+思想解读+逐步优化)五千字好文
    一个认为一切根源都是“自己不够强”的INTJ个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数Python-3.12.0文档解读目录 我的写法(刚学Python时)代码点评时间复杂度分析空间复杂度分析总结我要更强优化建议优化后的代码时间复杂......