Jung 发表于 2019-12-12 09:52:09

def Fun44():   
    MORSE_CODE = {'.-...': '&', '--..--': ',', '....-': '4', '.....': '5', '...---...': 'SOS', '-...': 'B', '-..-': 'X', '.-.': 'R', '.--': 'W', '..---': '2', '.-': 'A', '..': 'I', '..-.': 'F', '.': 'E', '.-..': 'L', '...': 'S', '..-': 'U', '..--..': '?', '.----': '1', '-.-': 'K', '-..': 'D', '-....': '6', '-...-': '=', '---': 'O', '.--.': 'P', '.-.-.-': '.', '--': 'M', '-.': 'N', '....': 'H', '.----.': "'", '...-': 'V', '--...': '7', '-.-.-.': ';', '-....-': '-', '..--.-': '_', '-.--.-': ')', '-.-.--': '!', '--.': 'G', '--.-': 'Q', '--..': 'Z', '-..-.': '/', '.-.-.': '+', '-.-.': 'C', '---...': ':', '-.--': 'Y', '-': 'T', '.--.-.': '@', '...-..-': '$', '.---': 'J', '-----': '0', '----.': '9', '.-..-.': '"', '-.--.': '(', '---..': '8', '...--': '3'}
    inputcode = input("please input morse code:")
    Afterstripcode = inputcode.strip()
    Finalcode = Afterstripcode.rstrip()
    Lmorsecode = Finalcode.split(" ")
    S = ""
    for i in range(len(Lmorsecode)):
      if i!=len(Lmorsecode)-1:
            if Lmorsecode!="":
                S = S + MORSE_CODE]
            else:
                S = S + " "
      else:
            S = S + MORSE_CODE]
    print(S)

闲愚 发表于 2019-12-17 21:26:01

看看

闲愚 发表于 2019-12-17 21:27:58

class MorseCode:
    def __init__(self):
      self.code_dict = {'.-...': '&', '--..--': ',', '....-': '4', '.....': '5', '...---...': 'SOS',
                        '-...': 'B', '-..-': 'X', '.-.': 'R', '.--': 'W', '..---': '2', '.-': 'A', '..': 'I',
                        '..-.': 'F', '.': 'E', '.-..': 'L', '...': 'S', '..-': 'U', '..--..': '?',
                        '.----': '1', '-.-': 'K', '-..': 'D', '-....': '6', '-...-': '=', '---': 'O',
                        '.--.': 'P', '.-.-.-': '.', '--': 'M', '-.': 'N', '....': 'H', '.----.': "'",
                        '...-': 'V', '--...': '7', '-.-.-.': ';', '-....-': '-', '..--.-': '_', '-.--.-': ')',
                        '-.-.--': '!', '--.': 'G', '--.-': 'Q', '--..': 'Z', '-..-.': '/', '.-.-.': '+',
                        '-.-.': 'C', '---...': ':', '-.--': 'Y', '-': 'T', '.--.-.': '@', '...-..-': ',
                        '.---': 'J', '-----': '0', '----.': '9', '.-..-.': '"', '-.--.': '(', '---..': '8',
                        '...--': '3'}
    def trans(self,s):
      for each_code in s.split(' '):
            print(self.code_dict,end = ' ')

a = MorseCode()
a.trans('.... . -.-- .--- ..- -.. .')

holiday_python 发表于 2020-4-28 12:53:58

学习

19971023 发表于 2020-6-17 19:15:54

1

nononoyes 发表于 2020-8-27 10:45:48


#题目来源:https://fishc.com.cn/forum.php?mod=viewthread&tid=87150
MORSE_CODE = {'.-...': '&', '--..--': ',', '....-': '4', '.....': '5', '...---...': 'SOS', '-...': 'B', '-..-': 'X',
            '.-.': 'R', '.--': 'W', '..---': '2', '.-': 'A', '..': 'I', '..-.': 'F', '.': 'E', '.-..': 'L',
            '...': 'S', '..-': 'U', '..--..': '?', '.----': '1', '-.-': 'K', '-..': 'D', '-....': '6',
            '-...-': '=', '---': 'O', '.--.': 'P', '.-.-.-': '.', '--': 'M', '-.': 'N', '....': 'H',
            '.----.': "'", '...-': 'V', '--...': '7', '-.-.-.': ';', '-....-': '-', '..--.-': '_', '-.--.-': ')',
            '-.-.--': '!', '--.': 'G', '--.-': 'Q', '--..': 'Z', '-..-.': '/', '.-.-.': '+', '-.-.': 'C',
            '---...': ':', '-.--': 'Y', '-': 'T', '.--.-.': '@', '...-..-': '$', '.---': 'J', '-----': '0',
            '----.': '9', '.-..-.': '"', '-.--.': '(', '---..': '8', '...--': '3'}
def decodeMorse(morseCode):
    result=[]
    #去掉头和尾部的空格
    morseCode = morseCode.strip()
    #调用split()方法将传入的morseCode 先按照三个空格进行切片
    lst_three = morseCode.split('   ')
    for i in lst_three:
      # 调用split()方法将传入的morseCode 先按照一个空格进行切片,得到key值
      lst_one = i.split(' ')
      #将lst_one 合并为一个单词
      temp_he = ''
      for j in lst_one:
            temp_he += MORSE_CODE
      result.append(temp_he)

    return ' '.join(result)

def assert_equals(func, target, *args):
    if (func == target):
      print('SUCC!')
    else:
      print('Fail! {0} not equals {1} '.format(func,target))
      print(*args)

assert_equals(decodeMorse('.... . -.--   .--- ..- -.. .'), 'HEY JUDE')
assert_equals(decodeMorse(' . '), 'E')
assert_equals(decodeMorse('...---...'), 'SOS')
assert_equals(decodeMorse('      ...---... -.-.--   - .... .   --.- ..- .. -.-. -.-   -... .-. --- .-- -.   ..-. --- -..-   .--- ..- -- .--. ...   --- ...- . .-.   - .... .   .-.. .- --.. -.--   -.. --- --. .-.-.-'), 'SOS! THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG.')

君子好逑 发表于 2022-9-17 11:26:28

from unittest import result


def decodeMorse(morseCode):
    MORSE_CODE = {'.-...': '&', '--..--': ',', '....-': '4',
                '.....': '5', '...---...': 'SOS', '-...': 'B',
                '-..-': 'X', '.-.': 'R', '.--': 'W', '..---': '2',
                '.-': 'A', '..': 'I', '..-.': 'F', '.': 'E', '.-..': 'L',
                '...': 'S', '..-': 'U', '..--..': '?', '.----': '1', '-.-': 'K',
                '-..': 'D', '-....': '6', '-...-': '=', '---': 'O', '.--.': 'P',
                '.-.-.-': '.', '--': 'M', '-.': 'N', '....': 'H', '.----.': "'",
                '...-': 'V', '--...': '7', '-.-.-.': ';', '-....-': '-', '..--.-': '_',
                '-.--.-': ')', '-.-.--': '!', '--.': 'G', '--.-': 'Q', '--..': 'Z',
                '-..-.': '/', '.-.-.': '+', '-.-.': 'C', '---...': ':', '-.--': 'Y', '-': 'T',
                '.--.-.': '@', '...-..-': '$', '.---': 'J', '-----': '0', '----.': '9',
                '.-..-.': '"', '-.--.': '(', '---..': '8', '...--': '3'}
    wordListt = morseCode.split("   ")
    print(wordListt)
    result = ''
    for each in wordListt:
      alphabetList = each.split(' ')
      for alphabet in alphabetList:
            if(str(MORSE_CODE.get(alphabet)) == "None"):
                continue

            else:
                result += str(MORSE_CODE.get(alphabet))

      result += ' '

    return result

if __name__ == "__main__":
    target = " ...---... -.-.--   - .... .   --.- ..- .. -.-. -.-   -... .-. --- .-- -.   ..-. --- -..-   .--- ..- -- .--. ...   --- ...- . .-.   - .... .   .-.. .- --.. -.--   -.. --- --. .-.-.-"
    result = decodeMorse(target)
    print(result)
页: 1 [2]
查看完整版本: Python:每日一题 44