Python课堂作业

1.从开发的代码库中得到一组数据,表示每个文件的代码变更情况{'login.py': 'a 8 d 2 u 3', 'order.py': 'a 15 d 0 u 34', 'info.py': 'a 1 d 20 u 5'}其中 a表示新增行数,d表示删除行数,u表示修改行数。login.py的变更行数为13

要求:统计出每个文件的变更行数

复制代码
data = {'login.py': 'a 8 d 2 u 3', 'order.py': 'a 15 d 0 u 34', 'info.py': 'a 1 d 20 u 5'}
for k, v in data.items():
    sum = 0
    for x in data[k].split(' '):
        if x.isdigit():  # 判断是否为数字
            sum += int(x)
        # try:
        #     sum += int(x)  # 通过try except方法捕获异常实现
        # except:
        #     pass
    print('文件:%s,共变更%d行' % (k, sum))
复制代码

2.写一个方法sanjiao(a, b, c),判断三个参数是否能构成一个三角形,如果不能则抛出异常IllegalArgumentException,显示异常信息a,b,c”不能构成三角形”,如果可以构成,则显示三角形三个边长,在方法中得到命令行输入的三个整数,调用此方法,并捕获异常。

复制代码
def san_jiao(a, b, c):
    try:
        if a + b > c and a + c > b and b + c > a:
            print("三角形三个边长分别为{},{},{}".format(a, b, c))
        else:
            raise Exception("IllegalArgumentException")
    except Exception as result:
        print("异常为:", result, "{},{},{}不能构成三角形".format(a, b, c))


# san_jiao(3, 4, 5)
san_jiao(1, 2, 3)
复制代码

 

3.从命令行得到5个整数,放入一列表中,然后打印输出,要求:如果输入数据不为整数,要捕获产生的异常,显示“请输入整数”,捕获输入参数不足5个的异常(越界),显示“请输入至少5个整数”。

复制代码
numbers = []
for i in range(1, 6):
try:
num = int(input("请输入第" + str(i) + "个整数"))
except:
print("请输入整数")
else:
numbers.append(num)

if len(numbers) < 5:
raise IndexError("请输入至少5个整数")
复制代码

 

4.编写代码,调用CCircle方法,计算圆的面积。并且自己定义一个异常类,如果半径为负值,抛出自己定义的异常。

复制代码
复制代码
import math


class MathException(Exception):
    def __init__(self, radius):
        self.radius = radius


def CCircle(radius):
    if radius < 0:
        raise MathException("半径为负值")
    else:
        print("圆的面积为:{:.2f}".format(math.pi * (radius ** 2)))


#CCircle(-1)
CCircle(3)
复制代码
复制代码

 

posted @   温煦而不是温熙  阅读(631)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示