【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,先来聊一聊输入和 ...
随机推荐
- C语言利用 void 类型指针实现面向对象类概念与抽象。
不使用C++时,很多C语言新手可能认为C语言缺乏了面向对象和抽象性,事实上,C语言通过某种组合方式,可以间接性的实现面对对象和抽象. 不过多态和继承这种实现,就有点小麻烦,但是依然可以实现. 核心: ...
- Linux配置CentOs7.4(网络连接处理)
说明:CentOS 7.0默认安装好之后是没有自动开启网络连接的! 进入登录界面 账号输入root 回车 再输入上面设置的root密码回车 系统登录成功 设置IP地址.网关DNS cd /etc/s ...
- BZOJ5418:[NOI2018]屠龙勇士(exCRT,exgcd,set)
Description Input Output Sample Input 23 33 5 74 6 107 3 91 9 10003 23 5 64 8 71 1 11 1 Sample Outpu ...
- 1040. [ZJOI2008]骑士【树形DP】
Description Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各 界的赞扬.最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争.战 ...
- lombok问题
今天研究了下以dubbo作为分布式的开源项目dubbo-app. 为了排除一些依赖的冲突和干扰,我另外开辟一个新的工作空间,同时我也将公司项目的依赖打个压缩包分类备份下. 这样一来,dubbo-app ...
- JS实现图片的淡入和淡出的两种方法,如有不足,还请前辈多多指导^-^~
今天下午练习了下这个图片的淡入淡出小demo,如有不足,还请前辈多多指导^-^~ 总结如下: 第一种方法: 个人觉得第一种方法比较好,同时兼容IE8以下浏览器,但是如下代码中,不知可不可以将timer ...
- 与数论的爱恨情仇--01:判断大素数的Miller-Rabin
在我们需要判断一个数是否是素数的时候,最容易想到的就是那个熟悉的O(√n)的算法.那个算法非常的简单易懂,但如果我们仔细想想,当n这个数字很大的时候,这个算法其实是不够用的,时间复杂度会相对比较高. ...
- 关于VC++6.0与WIN10系统不兼容的解决办法
记得第一次接触C语言,用的第一个编译器就是VC++6.0.当时自己的是Win10系统,第一次安装就打不开,后来网上一查说是系统兼容性的问题.今天室友突然想安装VC++6.0,也遇到了兼容的问题,我就帮 ...
- scala集合与java集合的转换应用
今天在业务开发中遇到需要Scala集合转为Java集合的场景: 因为业务全部是由Scala开发,但是也避免不了调用Java方法的场景,所以将此记录下来加深记忆: import scala.collec ...
- uliweb框架数据库操作
先安装数据库和相关的库文件 sudo aptitude install python-setuptools sudo easy_install SQLAlchemy sudo easy_install ...