武汉理工大学实验十第1关

任务描述

数据来源:武汉市住房和保障房屋管理局 附件中为‘2021年第一季度全市预计达到销售条件的商品房项目清单’,文件名为wuhan2021s1.csv,文件编码格式为UTF-8。 请分析数据格式及内容,完成以下功能: 输入选项n 1 如果n为规模升序,输出按照'可售住宅总规模'的数据从小到大排序,并依次输出数据,每行内的数据间以空格间隔,输出格式见示例

2 如果n为规模降序,输出按照'可售住宅总规模'的数据从大到小排序,并依次输出数据,每行内的数据间以空格间隔,输出格式见示例

3 如果n为区属中的某个区,如洪山区, 首先按照文件数据顺序依次每行输出该区属的项目信息,每行内的数据间以空格间隔,输出格式见示例 然后输出该区属内的可售住宅总规模之和,单位为平方米,保留两位小数,输出格式见示例

4 如果n为总规模,则输出该文件中所有项目的可售住宅总规模之和,单位为平方米,严格保留两位小数,输出格式见示例

5 如果n不是以上输入,则输出错误输入

答案如下:

with open("step3/wuhan2021s1.csv", "r", encoding='UTF-8') as f:

    ls = []

    for i in f.readlines()[1:]:

        ls.append(i.strip().split(','))

n = input()

if n == '规模降序':

    for i in sorted(ls, key=lambda x: eval(x[-1]), reverse=True):

        print(' '.join(i))

elif n == '规模升序':

    for i in sorted(ls, key=lambda x: eval(x[-1])):

        print(' '.join(i))

elif n in set([i[1] for i in ls]):

    result=0

    for i in ls:

        if i[1] == n:

            print(' '.join(i))

            result=result+eval(i[-1])

    print("{:.2f}平方米".format(result))

elif n == '总规模':

    print("{:.2f}平方米".format(sum([eval(i[-1]) for i in ls])))

else:

    print("错误输入")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值