Py学习  »  Python

Python标准库PyPI与异常处理

Python初级入门到精通 • 1 月前 • 73 次点击  

Python中有三种主要类型的模块:

1是自己编写的那些,

2是从外部源安装的,

3是Python预装的。

最后一种类型称为标准库。

包含许多有用的模块. 包括string, re, datetime, math, random, os, multiprocessing, subprocess, socket, email, json, doctest, unittest, pdb, argparse and sys.

标准库可以完成的任务包括字符串解析、数据序列化、测试、调试和操作日期、电子邮件、命令行参数等等。

Python广泛的标准库是它作为语言的主要优点之一。

标准库中的一些模块是用Python编写的,有些是用C语言编写的。

多数都可在所有平台上使用,但有些是Windows或UNIX专用的。

我们不会讲解标准库中的所有模块,太多了。标准库的完整文档可在www. Python .Org网上获得。

Python预装模块的名称是什么?:AThe Standard Library(标准模块)

许多第三方Python模块存储在Python包索引上。(PyPI).

好的安装方法是使用一个叫做PIP的程序。默认情况下,它是用Python的现代发行版安装的。如果你没有,它很容易在线安装。一旦拥有了,从PyPI安装库就很容易了。查找要安装的库的名称,转到命令行(对于Windows,它将是命令提示符),并输入PIP安装库名称。完成此操作后,导入库并在代码中使用它。

使用PIP是在大多数操作系统上安装库的标准方式,但是一些库具有用于Windows的预构建二进制文件。这些都是正常的可执行文件,允许您安装GUI的库,就像安装其他程序一样。在命令行输入PIP命令很重要,而不是Python解释器。


Python异常处理:

由于错误的代码或输入,出错时会发生。当发生异常时,程序立即停止。

下面的代码通过尝试将8除以0来生成ZeroDivisionError 异常。

num1 = 8

num2 = 0

print(num1/num2)

结果是:

ZeroDivisionError: division by zero

英文意思:

除以0错误

division 除

by 通过

zero 零

Error错误

什么是异常?:由于错误的代码或输入而发生的事件。


常见异常事件: 

ImportError:导入失败;

IndexError:一个列表用一个超出范围的数字索引;

NameError:使用未知变量;

SyTraceError:无法正确解析代码;

TypeError:在不适当类型的值上调用函数;

ValueError:函数被调用在正确类型的值上,但具有不适当的值。

Python有几个其他内置异常,例如ZooDistVistIOrror和OsCurror。第三方库也经常定义它们自己的异常。


这个代码引发了什么异常?

print(“9”+ 11)

TypeError


异常处理:要处理异常,并在发生异常时调用代码,则可以使用“try/except ”语句。尝试块包含可能引发异常的代码。如果发生异常,则尝试执行块中的代码,并运行除块中的代码。如果没有发生错误,除块中的代码不会运行。

例如:

try:

   num11 = 9

   num21 = 0

   print (num11 / num21)

   print("计算完毕")

except ZeroDivisionError:

   print("发生了错误")

   print("一个除以0的错误")

结果:

>>>

发生了错误

一个除以0的错误

>>>

在上面的代码中,定义了要处理的异常类型

异常处理:尝试语句可以有多个不同的块,以处理不同的异常。

也可以使用括号将多个异常放入一个单独的块中,使除块处理所有的异常。

try:

   variable = 15

   print(variable + "hello")

   print(variable / 3)

except ZeroDivisionError:

   print("Divided by zero")

except (ValueError, TypeError):

   print("Error occurred")

结果:

>>>

Error occurred

>>>

异常处理:指定的例外语句将捕获所有错误。这些方法应谨慎使用,因为它们可以捕捉意外错误并隐藏编程错误。

例如:

try:

   words = "spams"

   print(word / 0)

except:

   print("发生了错误")

结果:

>>>

发生了一个错误

>>>

注“异常处理在处理用户输入时特别有用。



关注公众号,每天可以领红包


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/182824
 
73 次点击