python写一个基于tcp协议的socket
时间: 2024-12-14 22:24:15 浏览: 7
在Python中,你可以使用内置的`socket`模块来编写一个基于TCP协议的服务器或客户端程序。这里是一个简单的TCP服务器的例子:
```python
import socket
# 创建一个TCP/IP套接字
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = 'localhost'
port = 9000 # 设置监听端口
# 绑定到特定地址上
server_socket.bind((host, port))
# 设置最大连接数和超时时间
server_socket.listen(5)
print(f'Server is listening on {host}:{port}')
while True:
# 建立一个新的连接
client_socket, addr = server_socket.accept()
print(f'Accepted connection from {addr}:{addr}')
# 接收客户端的数据
request_data = client_socket.recv(1024).decode('utf-8')
print(f'Received: {request_data}')
# 对请求进行处理,这里只是一个示例,实际应用中替换为业务逻辑
response = f'Hello from server, you said: {request_data}'
# 发送响应回客户端
client_socket.sendall(response.encode('utf-8'))
# 关闭客户端连接
client_socket.close()
```
在这个例子中,服务器首先创建一个TCP套接字,然后绑定到指定的主机和端口,等待来自客户端的连接。当连接到来时,服务器接受连接,接收客户端的数据,处理并返回响应,最后关闭连接。
如果你要编写一个客户端,可以使用类似的`socket`模块来连接到服务器,发送请求并接收响应。但需要注意的是,实际项目中还需要处理异常以及更多的细节。
阅读全文