| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 767 人关注过本帖
标题:摩斯电码解密器出现问题,在线求助,急
只看楼主 加入收藏
WLE
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2020-10-5
结帖率:0
收藏
已结贴  问题点数:20 回复次数:1 
摩斯电码解密器出现问题,在线求助,急
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 出现 在线 解密 
2020-10-05 21:29
古123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:219
专家分:1098
注 册:2017-2-5
收藏
得分:20 
图片附件: 游客没有浏览图片的权限,请 登录注册

1:最好不要用关键字
2:字典里最后一个是不需要逗号的

使用print(val,',',end='')的时候val与,之间会有一个空格,所以你后面找的是'--. ',尾部多一个空格
这个是我刚才写的,可以运行
程序代码:
code = {'A': '.-', 'B': '-...', 'C': '-.-.',
     'D': '-..', 'E': '.', 'F': '..-.',
     'G': '--.', 'H': '....', 'I': '..',
     'J': '.---', 'K': '-.-', 'L': '.-..',
     'M': '--', 'N': '-.', 'O': '---', 'P': '.--.',
     'Q': '--.-', 'R': '.-.', 'S': '...', 'T': '-',
     'U': '..-', 'V': '...-', 'W': '.--', 'X': '-..-',
     'Y': '-.--', 'Z': '--..',
     '1': '.----', '2': '..---', '3': '...--',
     '4': '....-', '5': '.....', '6': '-....',
     '7': '--...', '8': '---..', '9': '----.',
     '0': '-----'
     }
# 反转键值
code2 = {value:key for key,value in code.items()}

mode = input('选择模式,0=加密,1=解密')
if mode == '0':
    text = input('请输入一串文字:')

    for c in text:
        morse = code[c.upper()]
        print(morse,'/',end='')

elif mode == '1':
    text = input('请输入一段字符:')
    # 清除空字符
    # print(morse,'/',end='')会在morse和'/'之间添加一个空格
    text = text.replace(' ','')

    # 以/分隔
    for c in text.split('/'):
        # 筛除空字符,当输入最后为/时候,不要忘记后面还有个空
        if c != '':
            print(code2[c],'/',end='')

2020-10-07 14:15
快速回复:摩斯电码解密器出现问题,在线求助,急
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023806 second(s), 12 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved