l1_____9 2021-11-21 20:22 采纳率: 40%
浏览 55
已结题

python星座问题解答入门程序

跪解答

给定如下数据,输入星座名称,系统显示日期,星座字符
输入:水瓶座
输出:水瓶座,1月20日-2月18日,[表情]
输入:水瓶
输出:星座名称输入错误
输入:exit
结束运行

a = ['水瓶座,120,218,9810',
     '双鱼座,219,320,9811',
     '白羊座,321,419,9800',
     '金牛座,420,520,9801',
     '双子座,521,621,9802',
     '巨蟹座,622,722,9803',
     '狮子座,723,822,9804',
     '处女座,823,922,9805',
     '天枰座,923,1023,9806',
     '天蝎座,1024,1122,9807',
     '射手座,1123,1221,9808 ',
     '魔蝎座,1222,119,9809']

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

1条回答 默认 最新

  • CSDN专家-文盲老顾 2021-11-21 20:42
    关注
    
    
    import re
    
    a = ['水瓶座,120,218,9810',
         '双鱼座,219,320,9811',
         '白羊座,321,419,9800',
         '金牛座,420,520,9801',
         '双子座,521,621,9802',
         '巨蟹座,622,722,9803',
         '狮子座,723,822,9804',
         '处女座,823,922,9805',
         '天枰座,923,1023,9806',
         '天蝎座,1024,1122,9807',
         '射手座,1123,1221,9808 ',
         '魔蝎座,1222,119,9809']
    
    while True:
        n = input('输入星座:')
        if n == 'exit':
            break
        exists = False
        for i in a:
            if re.match(n, i)!=None and len(n)==3:
                exists = True
                print(re.sub('^([^,]+),(\d+)(\d{2}),(\d+)(\d{2}),(\d+)','\\1,\\2月\\3日-\\4月\\5日,[emoj:\\6]',i))
                break
        if exists == False:
            print('星座名称输入错误')
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月30日
  • 已采纳回答 11月22日
  • 创建了问题 11月21日

悬赏问题

  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用