python实现带声音的摩斯码翻译实现方法


Posted in Python onMay 20, 2015

本文实例讲述了python实现带声音的摩斯码翻译程序,分享给大家供大家参考。具体分析如下:

这里需要使用PyGame来发出声音。

import pygame
import time
import sys
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': '--..',
    '0': '-----', '1': '.----', '2': '..---',
    '3': '...--', '4': '....-', '5': '.....',
    '6': '-....', '7': '--...', '8': '---..',
    '9': '----.' 
    }
ONE_UNIT = 0.5
THREE_UNITS = 3 * ONE_UNIT
SEVEN_UNITS = 7 * ONE_UNIT
PATH = 'morse_sound_files/'
def verify(string):
  keys = CODE.keys()
  for char in string:
    if char.upper() not in keys and char != ' ':
      sys.exit('Error the charcter ' + char + ' cannot be translated to Morse Code')
def main():
  print 'Welcome to Alphabet to Morse Code Translator v.01\n'
  msg = raw_input('Enter Message: ')
  verify(msg)
  print
  pygame.init()
  for char in msg:
    if char == ' ':
      print ' '*7,
      time.sleep(SEVEN_UNITS)
    else:
      print CODE[char.upper()],
      pygame.mixer.music.load(PATH + char.upper() + '_morse_code.ogg')
      pygame.mixer.music.play()
      time.sleep(THREE_UNITS)
if __name__ == "__main__":
  main()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python中多线程及程序锁浅析
Jan 21 Python
粗略分析Python中的内存泄漏
Apr 23 Python
Python2.x中文乱码问题解决方法
Jun 02 Python
python3+PyQt5实现使用剪贴板做复制与粘帖示例
Jan 24 Python
python中使用正则表达式的后向搜索肯定模式(推荐)
Nov 11 Python
python web基础之加载静态文件实例
Mar 20 Python
Python 输入一个数字判断成绩分数等级的方法
Nov 15 Python
Python OS模块实例详解
Apr 15 Python
Django视图扩展类知识点详解
Oct 25 Python
python进程池实现的多进程文件夹copy器完整示例
Nov 27 Python
TFRecord格式存储数据与队列读取实例
Jan 21 Python
pytorch 计算ConvTranspose1d输出特征大小方式
Jun 23 Python
python定时检查某个进程是否已经关闭的方法
May 20 #Python
Python操作列表之List.insert()方法的使用
May 20 #Python
Python中List.index()方法的使用教程
May 20 #Python
在Python中操作列表之list.extend()方法的使用
May 20 #Python
python实现马耳可夫链算法实例分析
May 20 #Python
Python中List.count()方法的使用教程
May 20 #Python
在Python中操作列表之List.append()方法的使用
May 20 #Python
You might like
ThinkPHP中URL路径访问与模块控制器之间的关系
2014/08/23 PHP
Zend Framework教程之Application和Bootstrap用法详解
2016/03/10 PHP
thinkPHP5实现的查询数据库并返回json数据实例
2017/10/23 PHP
php异常处理捕获错误整理
2019/09/23 PHP
js验证表单大全
2006/11/25 Javascript
img的onload的另类用法
2008/01/10 Javascript
js限制文本框为整数和货币的函数代码
2010/10/13 Javascript
使用Mootools动态添加Css样式表代码,兼容各浏览器
2011/12/12 Javascript
js 本地预览的简单实现方法
2014/02/18 Javascript
JQuery中$(document)是什么意思有什么作用
2014/07/21 Javascript
Javascript中Array.prototype.map()详解
2014/10/22 Javascript
浅谈EasyUI中编辑treegrid的方法
2015/03/01 Javascript
JavaScript中使用Object.prototype.toString判断是否为数组
2015/04/01 Javascript
javascript实现label标签跳出循环操作
2016/03/06 Javascript
JavaScript性能优化总结之加载与执行
2016/08/11 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
2017/01/21 Javascript
canvas雪花效果核心代码分享
2017/02/19 Javascript
以v-model与promise两种方式实现vue弹窗组件
2018/05/21 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
2019/01/24 Javascript
Vue实现数据请求拦截
2019/10/23 Javascript
浅谈Webpack4 Tree Shaking 终极优化指南
2019/11/18 Javascript
基于vue实现微博三方登录流程解析
2020/11/04 Javascript
vue的$http的get请求要加上params操作
2020/11/12 Javascript
Python开发之快速搭建自动回复微信公众号功能
2016/04/22 Python
Python3.6实现带有简单界面的有道翻译小程序
2019/04/16 Python
Django CSRF认证的几种解决方案
2020/03/03 Python
python虚拟环境模块venv使用及示例
2020/03/04 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
2020/09/21 Python
一款利用纯css3实现的超炫3D表单的实例教程
2014/12/01 HTML / CSS
html5-Canvas可以在web中绘制各种图形
2012/12/26 HTML / CSS
硅酸盐工业控制专业应届生求职信
2013/11/02 职场文书
《月亮湾》教学反思
2014/04/14 职场文书
换届选举主持词
2015/07/03 职场文书
2016年第104个国际护士节活动总结
2016/04/06 职场文书
如何利用 CSS Overview 面板重构优化你的网站
2021/10/24 HTML / CSS
ubuntu开机后ROS程序自启动问题
2022/12/24 Servers