Yuu8599 2022-07-06 09:40 采纳率: 100%
浏览 21
已结题

关于python的字典问题,需用到sys.argv输入

请教一下这个需要怎么写才能达到最后如图所示的效果,使用input的话能写出来,但是不太懂sys.argv模块。
Q.写一个输入区域后输出该区域名和该区域面积的程序。
要求:请使用命令行参数进行输入,输入区域时,即使没输入文字“区“也依然自动转换为”某某区“,如输入”千种“输出也依旧为”千种区“。如果输入文字不存在在内,则输出“某某区不存在”。
数据为下:
千种区 18.18平方千米
东区 7.71平方千米
北区 17.53平方千米
西区 17.93平方千米
中村区 16.30平方千米
中区9.38平方千米
昭和区 10.94平方千米
瑞穗区 11.22平方千米
热田区 8.20平方千米
中川区 32.02平方千米
港区 45.49平方千米
南区 18.46平方千米
守山区 34.01平方千米
绿区 37.91平方千米
名东区 19.45平方千米
天白区 21.58平方千米
输出结果如下:*原本是日文 进行了翻译。

img

  • 写回答

2条回答 默认 最新

  • 7*24 工作者 2022-07-06 14:50
    关注
    
    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    import sys
    
    flag = False
    regions = {'千种区': '18.18平方千米', '东区': '7.71平方千米', '北区': '17.53平方千米', '西区': '17.93平方千米', '中村区': '16.30平方千米', '中区': '9.38平方千米', '昭和区': '10.94平方千米', '瑞穗区': '11.22平方千米', '热田区': '8.20平方千米', '中川区': '32.02平方千米', '港区': '45.49平方千米', '南区': '18.46平方千米', '守山区': '34.01平方千米', '绿区': '37.91平方千米', '名东区': '19.45平方千米', '天白区': '21.58平方千米'}
    
    user_input = sys.argv[1]      #用户输入,这边只取了第一个用户输入的参数
    for key in regions.keys():
        if user_input in key:
            print(key, regions.get(key))
            flag = True
    else:
        if not flag:
            if user_input.endswith('区'):
                print(f'{ user_input }不存在')
            else:
                print(f'{user_input}区不存在')
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月17日
  • 已采纳回答 7月9日
  • 创建了问题 7月6日

悬赏问题

  • ¥15 删除虚拟显示器驱动 删除所有 Xorg 配置文件 删除显示器缓存文件 重启系统 可是依旧无法退出虚拟显示器
  • ¥15 vscode程序一直报同样的错,如何解决?
  • ¥15 关于使用unity中遇到的问题
  • ¥15 开放世界如何写线性关卡的用例(类似原神)
  • ¥15 关于并联谐振电磁感应加热
  • ¥60 请查询全国几个煤炭大省近十年的煤炭铁路及公路的货物周转量
  • ¥15 请帮我看看我这道c语言题到底漏了哪种情况吧!
  • ¥66 如何制作支付宝扫码跳转到发红包界面
  • ¥15 pnpm 下载element-plus
  • ¥15 解决编写PyDracula时遇到的问题