Python哈希函数什么情况下抛出异常

Python022

Python哈希函数什么情况下抛出异常,第1张

抛出异常是停止运行这个函数中的代码。

哈希算法将一个不定长的输入,通过散列函数变换成一个定长的输出,即散列值。是一种信息摘要算法。对象的hash值比原对象拥有更低的内存复杂度。

它不同于加密。哈希是将目标文本转换成具有相同长度的,不可逆的杂凑字符串,而加密则是将文本转换为具有相同长度的,可逆的密文。哈希算法是不可逆的,只能由输入产生输出,不能由输出产生输入。而加密则是可逆的。即可以从输入产生输出,也可以反过来从输出推出输入。

8.4. 抛出异常

raise 语句允许程序员强制抛出一个指定的异常。例如:

>>>raise NameError('HiThere')

Traceback (most recent call last):

File "

", line 1, in ?

NameError: HiThere

要抛出的异常由 raise 的唯一参数标识。它必需是一个异常实例或异常类(继承自 Exception 的类)。

如果你需要明确一个异常是否抛出,但不想处理它,raise 语句可以让你很简单的重新抛出该异常:

>>>try:

... raise NameError('HiThere')

... except NameError:

... print('An exception flew by!')

... raise

...

An exception flew by!

Traceback (most recent call last):

File "

", line 2, in ?

NameError: HiThere