本文实例讲述了python实现带声音的摩斯码翻译程序,分享给大家供大家参考。具体分析如下:
这里需要使用PyGame来发出声音。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
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程序设计有所帮助。