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 相关文章推荐
详解Python2.x中对Unicode编码的使用
Apr 03 Python
Python与Redis的连接教程
Apr 22 Python
Python用list或dict字段模式读取文件的方法
Jan 10 Python
python检索特定内容的文本文件实例
Jun 05 Python
selenium+python自动化测试环境搭建步骤
Jun 03 Python
详解Python 字符串相似性的几种度量方法
Aug 29 Python
使用python写一个自动浏览文章的脚本实例
Dec 05 Python
python Plotly绘图工具的简单使用
Mar 03 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
Nov 02 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
Dec 07 Python
Python+SeaTable实现计算两个日期间的工作日天数
Jul 07 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
一段php加密解密的代码
2007/07/16 PHP
兼容firefox,chrome的网页灰度效果
2011/08/08 PHP
PHP中全面阻止SQL注入式攻击分析小结
2012/01/30 PHP
PHP取二进制文件头快速判断文件类型的实现代码
2013/08/05 PHP
php简单定时执行任务的实现方法
2015/02/23 PHP
php实用代码片段整理
2016/11/12 PHP
PHP MYSQL简易交互式站点开发
2016/12/27 PHP
yii2安装详细流程
2018/05/23 PHP
php7下的filesize函数
2019/09/30 PHP
Javascript - HTML的request类
2006/07/15 Javascript
js下用层来实现select的title提示属性
2010/02/23 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
Jquery中扩展方法extend使用技巧
2014/08/24 Javascript
一款基jquery超炫的动画导航菜单可响应单击事件
2014/11/02 Javascript
DOM节点深度克隆函数cloneNode()用法实例
2015/01/12 Javascript
js设置document.domain实现跨域的注意点分析
2015/05/21 Javascript
如何实现JavaScript动态加载CSS和JS文件
2020/12/28 Javascript
酷炫jQuery全屏3D焦点图动画效果
2016/03/22 Javascript
浅谈javascript中new操作符的原理
2016/06/07 Javascript
JS获取当前页面名称的简单实例
2016/08/19 Javascript
基于jQuery实现发送短信验证码后的倒计时功能(无视页面关闭)
2016/09/02 Javascript
微信小程序 解析网页内容详解及实例
2017/02/22 Javascript
JS实现非首屏图片延迟加载的示例
2018/01/06 Javascript
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
vue实现鼠标移过出现下拉二级菜单功能
2019/12/12 Javascript
[01:52]PWL S2开团时刻第四期——DOTA2成语故事
2020/12/03 DOTA
python绘制中国大陆人口热力图
2018/11/07 Python
解决sublime+python3无法输出中文的问题
2018/12/12 Python
Moss Bros官网:英国排名第一的西装店
2020/02/26 全球购物
.NET remoting的两种通道是什么
2016/05/31 面试题
客户代表自我评价范例
2013/09/24 职场文书
考试作弊检讨书大全
2014/02/18 职场文书
小学六一主持词开场白
2015/05/28 职场文书
财务会计个人原因辞职信
2019/06/21 职场文书
MySQL时间盲注的五种延时方法实现
2021/05/18 MySQL
vue代码分块和懒加载非必要资源文件
2022/04/11 Vue.js