编写一个评分模块(pingfen.py),里面有一个评分函数,函数可以输入任意个数字,然后去掉最高分和最低分,计算出平均分。把该模块放入一个包中(my_pack),然后再建立一个python文件从该包导入该模块,调用里面的函数,看是否能运行。函数里面要求能对所输入的数据异常进行异常处理,当输入的数据不是整数或浮点数,则提示数字类型错误。用python代码实现
时间: 2024-02-15 12:03:13 浏览: 18
好的,这是您的第一个问题,下面是回答:
首先,我们可以编写一个名为 `pingfen.py` 的评分模块,代码如下:
```python
def evaluation(*args):
# 对输入的参数进行异常处理
try:
scores = list(map(float, args))
except ValueError:
return "数字类型错误,请输入整数或浮点数!"
# 去掉最高分和最低分
scores.remove(max(scores))
scores.remove(min(scores))
# 计算平均分
avg_score = sum(scores) / len(scores)
return avg_score
```
接下来,我们将这个模块放到 `my_pack` 包中。首先,我们需要在 `my_pack` 文件夹下创建一个名为 `__init__.py` 的空文件,这个文件告诉Python这个文件夹是一个包。然后,在 `my_pack` 文件夹下创建一个名为 `pingfen.py` 的文件,将上面的评分函数拷贝到这个文件中即可。
最后,我们可以在另一个Python文件中导入这个模块,并调用里面的函数,代码如下:
```python
from my_pack.pingfen import evaluation
# 调用评分函数
score1 = evaluation(1, 2, 3, 4, 5)
score2 = evaluation(90, 80, 70, 60)
score3 = evaluation('a', 'b', 'c')
print(score1) # 3.0
print(score2) # 75.0
print(score3) # 数字类型错误,请输入整数或浮点数!
```
可以看到,我们成功地从 `my_pack` 包中导入了 `pingfen.py` 模块,并成功地调用了其中的函数。同时,函数也对输入的数据异常进行了处理。