【python 2.7】输入任意字母数字,输出其对应的莫尔斯码并播放声音
#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】输入任意字母数字,输出其对应的莫尔斯码并播放声音的更多相关文章
- Eclipse输入任意字母或指定字符出现提示框
Eclipse默认是输入"."的时候会有提示框提示对应的API. 如果想更方便的输入任意字母或者指定的符号出现提示框设置如下: 打开Eclipse,选中“Window”->& ...
- 利用 Python django 框架 输入汉字,数字,字符,等。。转成二维码!
利用 Python django 框架 输入汉字,数字,字符,等..转成二维码! 模块必备:Python环境 + pillow + qrcode 模块 核心代码import qrcode qr = ...
- python中判断输入是否为数字(包括浮点数)
1.当num确定为数字后 num=123.4print(isinstance(num,float))#判断是否为浮点数 print(isinstance(num,int))#判断是否为整数 2.当nu ...
- c 按输入的字母来输出对应效果
输入一个大写字母,如 F,输出 比如: 输入:F 输出: F EFE DEFED CDEFEDC BCDEFEDCB ABCDEFEDCBA #include<stdio.h> int m ...
- python实现输入任意一个大写字母生成金字塔的示例
输入任意一个大写字母,生成金字塔图形 def GoldTa(input): L = [chr(i) for i in range(65, 91)] # 大写字母A--Z idA = 65 # 从A开始 ...
- Appium+python 使用 press_keycode 如何输入大写字母
背景:在做自动化测试项目时,需要在文本框中输入一串数字和字母组合的字符串(注:此页面为webview无法使用send_keys方法) 要使用send_keys方法首先要知道键盘字符对应的数值,这个可以 ...
- 判断Python输入是否为数字、字符(包括正则表达式)
当键入字符串时候,我们自己就可以判断了! 一:我们在程序把输入的数字当字符串处理 import re print("我现在要写一个文件数字猜游戏数字游戏:") temp=input ...
- Python学习笔记-输入与输出
一.Python提供了raw_input()和input()两个函数实现数据输入. 1.raw_input() 接收字符串类型的输入数据. str1=raw_input("请输入字符串:&q ...
- Python基础篇--输入与输出
站长资讯平台:Python基础篇--输入与输出在任何语言中,输入和输出都是代码最基础的开始,so,先来聊一聊输入和输出输出输入END在任何语言中,输入和输出都是代码最基础的开始,so,先来聊一聊输入和 ...
随机推荐
- 浏览器地址栏运行JavaScript代码
这个很多人应该还是知道的,在浏览器地址栏可以直接运行JavaScript代码,做法是以javascript:开头后跟要执行的语句.比如: javascript:alert('hello from ad ...
- ajax跨域调用webservice例子
[WebMethod(Description = "这是一个描述")] public void GetTIM() { try { SqlDataAdapter da = new S ...
- autogen.sh脚本执行报错问题解决(针对DOMJudge平台搭建)
错误信息:./autogen.sh: 9: ./autogen.sh: aclocal: not found 解决办法: $ sudo apt-get install automake $ sudo ...
- centos6.5升级内核到3.0
因为是使用centos6.5安装的docker,而docker需要内核3.0以上的支持,所以必须升级内核 1. 导入public key rpm --import https://www.elrepo ...
- HTTP中常见的各种状态码详解及解决方案
总结了一些常见的http的状态码,以及常见的解决方案. 一.各范围内状态码大致含义 1xx:临时响应(Informational),需要请求者继续执行操作的状态代码,表示服务器正在接受请求. 2xx: ...
- Ubuntu 16.04 下简单安装使用golang之备忘
刚开始学习Go语言,这里记录下我在Ubuntu 16.04下安装使用golang的过程,方便以后查询. 一.安装 1.添加源 如果使用默认的源安装golang的话,版本太低,只到1.6 ...
- angularJs实现星星等级评分
星期六加班,教育后台也要有星级评分等级的需求,醉了……基本知道些怎么做,网上也随便找了找,没什么合意的,毕竟需求不同,也不能完全一样不是.学习之,改之╮(╯▽╰)╭ Directive angular ...
- ubuntu 装 mysql
sudo apt-get install mysql-server mysql-client
- WPF : ListBox的几种Template属性
原文:WPF : ListBox的几种Template属性 属性名 属性的类名 功能 示例 Template ControlTemplate 定义控件自身的外观.其子元素的布局可以自定义,也可以由It ...
- 【大数据】Hbase如何批量删除指定数据
一.起因: Hbase是一个列式存储,nosql类型的数据库,类似mongodb. 目前似乎没有提供批量删除的方法,只有一个单行删除的命令:deleteall 'tablename', rowkey ...