python中random库的使用和程序异常处理

一、random库的常用函数使用

使用random库的主要作用是生成随机数,常用以下九个函数:

seed(a=None) 初始化随机数种子,默认值为当前系统时间
random() 生成一个[0.0,1.0)之间的随机小数
randint(a,b) 生成一个[a,b]之间的整数
getrandbits(k) 生成一个k比特长度的随机整数
randrange(start,stop[,step]) 生成一个start至stop之间以step为步数的随机整数
uniform(a,b) 生成a,b之间随机小数
choice(seq) 从序列类型,例如列表中随机返回一个元素,seq指的是一个序列,可以是列表、元组、字符串
shuffle(seq) 将序列类型中的元素随机排列,返回打乱后的序列
sample(pop,k) 从pop类型中随机选取k个元素,以列表类型返回,pop类型指的是字符串、列表、元组等有序的数据类型

二、程序的异常处理

1.一般通过try-expect语句来实现。格式如下:

try:

    <语句块1>

expect   <异常类型>:

    <语句块2>

其中异常类型可以省略,省略表示可处理任何种类的异常。

未发生异常时执行语句块1,如果发生异常,则执行expect后的内容。

2.高级的程序异常处理:

除了try和expect外,还可以与else和finally配合使用,其中else和finally不必同时出现

try:

      <语句块1>

expect  <异常类型>:

      <语句块2>

else:

      <语句块3>

finally:

      <语句块4>

else后的语句只有在try正常执行后才会执行,finally后的语句无论如何都会被执行

使用实例:

try:
    a=eval(input("请输入数字:"))
    a**2
    print("正常执行")
except:
    print("输入有误")
else:
    print(a**2)
finally:
    print("执行完毕")

当输入的不是数字,而是一串字母时,发生异常,执行except和finally后的语句块:

而输入的是数字时,正常执行try后跳过except,执行else和finally后的语句块: