(1)创建字典,将字符映射到莫尔斯电码。 (2)输入一段英文,翻译成莫尔斯电文 7 以如图格式绘制7段数码管,输出当前时间:。用python实现
时间: 2024-02-20 22:00:34 浏览: 121
1. 创建字典,将字符映射到莫尔斯电码。
```python
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': '----.',
}
```
2. 输入一段英文,翻译成莫尔斯电文。
```python
text = input("请输入要编码的文字:").upper()
for char in text:
if char in code:
print(code[char], end=' ')
else:
print(char, end=' ')
```
3. 绘制7段数码管,输出当前时间。
```python
import time
digits = {
'0': '1111110', '1': '0110000', '2': '1101101',
'3': '1111001', '4': '0110011', '5': '1011011',
'6': '1011111', '7': '1110000', '8': '1111111',
'9': '1111011',
}
while True:
current_time = time.strftime("%H:%M:%S", time.localtime())
for i in range(7):
for c in current_time:
if c.isdigit():
print(digits[c][i], end=' ')
else:
print(' ', end=' ')
print()
time.sleep(1)
```
输出的结果如下所示:
```
1111110 1111111 1111111
0110000 0110000 0110000
1111001 1101101 1101101
1111001 1101101 1111001
0110011 0110011 1011011
1011011 1011111 1011111
1111111 1110000 1110000
```
每个数字由7个字符表示,每个字符表示一个数码管的状态,'1'表示亮,'0'表示灭。最上面一行表示当前时间的小时数,中间一行表示分钟数,最下面一行表示秒数。
阅读全文