python04---第四章 程序的控制结构(蒙特卡洛法算pi、程序异常处理)(random库、try-except)

第四章 程序的控制结构(蒙特卡洛法算pi、程序异常处理)(random库、try-except)


本章主要是:条件语句 循环语句

1.蒙特卡洛法 计算 pi 的值:

抛点,以1/4的 圆所占正方形的面积比例 去计算pi

import time #用于计算程序所用时间
import math
import random
t=time.process_time()
squart=10000
count=0
for i in range (squart+1):
    a,b=random.random(),random.random()
    rr=a**2+b**2
    if rr <= 1:
        count +=1
pi=4*count/squart
print("pi的值为:{:.10f}".format(pi))
t -= time.process_time()
print("所用时间为:{:.3f}".format(-t))

结果显示:
pi的值为:3.1516000000
所用时间为:0.016

2.程序的异常处理

异常处理:try-except语句
有这么一段语句:

num=eval(input("请输入一个整数:"))
print(num**2)

如果输入的是数字,例如:
请输入一个整数:10
100

如果输入的不是数字,例如:
请输入一个整数:b
Traceback (most recent call last):
  File "F:\Python\01练习\001.py", line 1, in <module>
    num=eval(input("请输入一个整数:"))
  File "<string>", line 1, in <module>
NameError: name 'b' is not defined

此时,出现异常类型:NameError
使用 try-except 语句实现异常处理,如下:

try:
    num=eval(input("请输入一个整数:"))
    print(num**2)
except NameError:
    print("输入错误,请输入一个整数!")

结果显示:
请输入一个整数:b
输入错误,请输入一个整数!

3.异常的高级用法:

(1)try-- except NameError-- except
(2)try-- except-- else-- finally

try:
    str="ABCDEFG"
    idx=eval(input("请输入一个整数(0-6):"))
    print(str[idx])
except NameError:
    print("输入错误,请输入一个数!")
except:
    print("其他错误!")

这段程序中:
如果输入的不是一个数,返回:输入错误,请输入一个数!
如果输入的是数但不是[0:6]之间的整数,返回:输入错误!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值