#python 2.7
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import os
import winsound,sys,time __author__ = 'BH8ANK' morse_dict = {
'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':'--..',
'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': '--..',
'':'-----',
'':'.----',
'':'..---',
'':'...--',
'':'....-',
'':'.....',
'':'-....',
'':'--...',
'':'---..',
'':'----.',
' ':' ',
} wave_dict = {
'a':r'F:\personal\Radio\cw_sound\A.wav',
'b':r'F:\personal\Radio\cw_sound\B.wav',
'c':r'F:\personal\Radio\cw_sound\C.wav',
'd':r'F:\personal\Radio\cw_sound\D.wav',
'e':r'F:\personal\Radio\cw_sound\E.wav',
'f':r'F:\personal\Radio\cw_sound\F.wav',
'g':r'F:\personal\Radio\cw_sound\G.wav',
'h':r'F:\personal\Radio\cw_sound\H.wav',
'i':r'F:\personal\Radio\cw_sound\I.wav',
'j':r'F:\personal\Radio\cw_sound\J.wav',
'k':r'F:\personal\Radio\cw_sound\K.wav',
'l':r'F:\personal\Radio\cw_sound\L.wav',
'm':r'F:\personal\Radio\cw_sound\M.wav',
'n':r'F:\personal\Radio\cw_sound\N.wav',
'o':r'F:\personal\Radio\cw_sound\O.wav',
'p':r'F:\personal\Radio\cw_sound\P.wav',
'q':r'F:\personal\Radio\cw_sound\Q.wav',
'r':r'F:\personal\Radio\cw_sound\R.wav',
's':r'F:\personal\Radio\cw_sound\S.wav',
't':r'F:\personal\Radio\cw_sound\T.wav',
'u':r'F:\personal\Radio\cw_sound\U.wav',
'v':r'F:\personal\Radio\cw_sound\V.wav',
'w':r'F:\personal\Radio\cw_sound\W.wav',
'x':r'F:\personal\Radio\cw_sound\X.wav',
'y':r'F:\personal\Radio\cw_sound\Y.wav',
'z':r'F:\personal\Radio\cw_sound\Z.wav',
'':r'F:\personal\Radio\cw_sound\1.wav',
'':r'F:\personal\Radio\cw_sound\2.wav',
'':r'F:\personal\Radio\cw_sound\3.wav',
'':r'F:\personal\Radio\cw_sound\4.wav',
'':r'F:\personal\Radio\cw_sound\5.wav',
'':r'F:\personal\Radio\cw_sound\6.wav',
'':r'F:\personal\Radio\cw_sound\7.wav',
'':r'F:\personal\Radio\cw_sound\8.wav',
'':r'F:\personal\Radio\cw_sound\9.wav',
'':r'F:\personal\Radio\cw_sound\0.wav',
' ':' ',
} print("\n")
print("Please input a string(999 to exit):")
print("\n\n")
code = 'initial' while(code!=''):
code = raw_input()
if(code == ''):
print('Bye!')
break
for i in code:
print str(morse_dict[i]),
if(' ' == i):
time.sleep(0.25)
if(' ' != i):
winsound.PlaySound(wave_dict[i], winsound.SND_NODEFAULT)
# os.system("paplay BEEP1.WAV")
print('\n')

音频文件使用业余无线电常用的软件 CW Player逐个生成。

【python 2.7】输入任意字母数字,输出其对应的莫尔斯码并播放声音的更多相关文章

  1. Eclipse输入任意字母或指定字符出现提示框

    Eclipse默认是输入"."的时候会有提示框提示对应的API. 如果想更方便的输入任意字母或者指定的符号出现提示框设置如下: 打开Eclipse,选中“Window”->& ...

  2. 利用 Python django 框架 输入汉字,数字,字符,等。。转成二维码!

    利用 Python django 框架 输入汉字,数字,字符,等..转成二维码! 模块必备:Python环境 + pillow  + qrcode 模块 核心代码import qrcode qr = ...

  3. python中判断输入是否为数字(包括浮点数)

    1.当num确定为数字后 num=123.4print(isinstance(num,float))#判断是否为浮点数 print(isinstance(num,int))#判断是否为整数 2.当nu ...

  4. c 按输入的字母来输出对应效果

    输入一个大写字母,如 F,输出 比如: 输入:F 输出: F EFE DEFED CDEFEDC BCDEFEDCB ABCDEFEDCBA #include<stdio.h> int m ...

  5. python实现输入任意一个大写字母生成金字塔的示例

    输入任意一个大写字母,生成金字塔图形 def GoldTa(input): L = [chr(i) for i in range(65, 91)] # 大写字母A--Z idA = 65 # 从A开始 ...

  6. Appium+python 使用 press_keycode 如何输入大写字母

    背景:在做自动化测试项目时,需要在文本框中输入一串数字和字母组合的字符串(注:此页面为webview无法使用send_keys方法) 要使用send_keys方法首先要知道键盘字符对应的数值,这个可以 ...

  7. 判断Python输入是否为数字、字符(包括正则表达式)

    当键入字符串时候,我们自己就可以判断了! 一:我们在程序把输入的数字当字符串处理 import re print("我现在要写一个文件数字猜游戏数字游戏:") temp=input ...

  8. Python学习笔记-输入与输出

    一.Python提供了raw_input()和input()两个函数实现数据输入. 1.raw_input() 接收字符串类型的输入数据. str1=raw_input("请输入字符串:&q ...

  9. Python基础篇--输入与输出

    站长资讯平台:Python基础篇--输入与输出在任何语言中,输入和输出都是代码最基础的开始,so,先来聊一聊输入和输出输出输入END在任何语言中,输入和输出都是代码最基础的开始,so,先来聊一聊输入和 ...

随机推荐

  1. javascript花式理解闭包

    一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域无非就是两种:全局变量和局部变量. Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量 ...

  2. Golang Http Server源码阅读

    建议看这篇文章前先看一下net/http文档 http://golang.org/pkg/net/http/ net.http包里面有很多文件,都是和http协议相关的,比如设置cookie,head ...

  3. 20165318 2017-2018-2 《Java程序设计》第三周学习总结

    20165318 2017-2018-2 <Java程序设计>第三周学习总结 学习总结 我感觉从这一章开始,新的知识点扑面而来,很多定义都是之前没有接触过的,看书的时候难免有些晦涩.但由于 ...

  4. React-Native 之 index.android.bundle

    问题: index.android.bundle  这个bug 我相信很少同学会遇到,然而就是这个问题,困扰了我跟我的同事多天, 各种方法处理:  进入 android 目录  ./gradlew c ...

  5. 论文笔记 Beyond Part Models: Person Retrieval with Refined Part Pooling_ECCV_2018

    1. 摘要 使用part-feature 能够起到更好的效果,不过这个需要我们很好地定位part的位置. 本文中作者集中考虑part内部的一致性,提出了 part-based convolutiona ...

  6. MapReduce -- 好友推荐

    MapReduce实现好友推荐: 张三的好友有王五.小红.赵六; 同样王五.小红.赵六的共同好友是张三; 在王五和小红不认识的前提下,可以通过张三互相认识,给王五推荐的好友为小红, 给小红推荐的好友是 ...

  7. Oracle 创建函数

    Oracle创建函数的方法如下: CREATE OR REPLACE FUNCTION FunctionName ( --传入参数 para NCHAR ) RETURN NUMBER IS --函数 ...

  8. NAS、SAN、ISCSI存储

    前提补充:linux下只要能够mount存储盘到目录,则这个存储盘必定是格式化过了的 NAS1.客户端通过TCP/IP协议连接存储服务器的存储卷.2.客户端---网络交换机---存储服务器3.存储服务 ...

  9. Linux--find命令和 xargs命令组合

    find 查找文件的命令,并可以做出相应的处理 命令格式: find filename [选项][-print -exec -ok ...] 选项参数: 1.-name :按照文件名称查找,可以提前c ...

  10. 【转】CSDN离线网页html文件自动跳转

    问题: 最近使用OneNote2016剪辑csdn的文章时,发现一些公式/文本框不能被正确识别,所以离线保存网页的html文件. 但是每次打开html文件,都会自动跳转的CSDN主页,即使断网,也会自 ...