实际审计实务中,初采集的数据的质量往往很难得到保证,从某公司系统中采集的从2019年1月开始的月度资金使用情况56736681,,91,,114,77,”,编写程序,实现以下功能 (1)将缺失项用0代替并显示缺失的具体月份; (2)将有数值的项进行显示,并显示对应月份; (3)显示金额最大的月份;显示金额最小的月份,以及2019年度使用资金总额。 原始数据定义: mstring="56,,73,66,81,,,91,,114,77,'
时间: 2024-03-07 08:49:25 浏览: 124
好的,我来帮你回答这个问题。
首先需要将原始数据转换成一个可以操作的列表类型,代码如下:
```
mstring="56,,73,66,81,,,91,,114,77,"
mstring = mstring.split(",")
mstring = [0 if x=='' else int(x) for x in mstring]
```
这里用","将原始数据分隔成一个列表,然后将空缺的项用0代替,并将字符串类型转换为整数类型。
接下来分别实现三个功能:
(1) 将缺失项用0代替并显示缺失的具体月份
```
for i in range(len(mstring)):
if mstring[i]==0:
print("第{}个月的数据缺失".format(i+1))
else:
print("第{}个月的使用资金为{}".format(i+1,mstring[i]))
```
(2) 将有数值的项进行显示,并显示对应月份
```
for i in range(len(mstring)):
if mstring[i]!=0:
print("第{}个月的使用资金为{}".format(i+1,mstring[i]))
```
(3) 显示金额最大的月份,显示金额最小的月份,以及2019年度使用资金总额
```
max_month = mstring.index(max(mstring))+1
min_month = mstring.index(min(mstring))+1
total_amount = sum(mstring)
print("金额最大的月份为第{}个月,使用资金为{}".format(max_month,max(mstring)))
print("金额最小的月份为第{}个月,使用资金为{}".format(min_month,min(mstring)))
print("2019年度使用资金总额为{}".format(total_amount))
```
这里用`max()`和`min()`分别找到最大值和最小值所在的索引,然后加1得到对应的月份。用`sum()`计算所有元素的和,得到2019年度使用资金总额。
希望这个回答能够解决你的问题。
阅读全文