使用TCP方式实现数字大小写转换
时间: 2023-06-14 11:02:32 浏览: 99
TCP(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层协议。在TCP协议中,数据被分割成一个个的报文段进行传输,每个报文段包含一个报文头和数据部分。
数字大小写转换可以通过客户端发送数字给服务器,服务器将数字转换为对应的大小写字母后再发送回客户端完成。下面是一个简单的TCP程序示例,使用Python语言实现。
服务端代码:
```python
import socket
# 定义IP和端口号
HOST = '127.0.0.1'
PORT = 8888
# 创建套接字
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定IP和端口号
server_socket.bind((HOST, PORT))
# 监听端口
server_socket.listen(1)
print('Server is listening...')
while True:
# 等待客户端连接
client_socket, client_addr = server_socket.accept()
print('Client %s:%s connected.' % client_addr)
# 接收客户端发送的数字
data = client_socket.recv(1024).decode()
print('Received data from client:', data)
# 将数字转换为对应的大小写字母
if data.isdigit():
if len(data) == 1:
if data == '0':
result = 'zero'
elif data == '1':
result = 'one'
elif data == '2':
result = 'two'
elif data == '3':
result = 'three'
elif data == '4':
result = 'four'
elif data == '5':
result = 'five'
elif data == '6':
result = 'six'
elif data == '7':
result = 'seven'
elif data == '8':
result = 'eight'
elif data == '9':
result = 'nine'
else:
result = 'Invalid input!'
else:
result = 'Invalid input!'
# 发送转换后的大小写字母给客户端
client_socket.send(result.encode())
print('Sent result to client:', result)
# 关闭客户端套接字
client_socket.close()
```
客户端代码:
```python
import socket
# 定义IP和端口号
HOST = '127.0.0.1'
PORT = 8888
# 创建套接字
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务器
client_socket.connect((HOST, PORT))
while True:
# 输入数字
data = input('Please input a number:')
if not data:
break
# 发送数字给服务器
client_socket.send(data.encode())
# 接收服务器发送的转换后的大小写字母
result = client_socket.recv(1024).decode()
print('Result:', result)
# 关闭客户端套接字
client_socket.close()
```
运行服务端程序和客户端程序后,客户端输入数字,服务端将数字转换为对应的大小写字母后发送给客户端,客户端接收并输出转换结果。
阅读全文