python socket教程
时间: 2023-09-12 19:13:33 浏览: 63
当然,我可以为您提供关于 Python socket 的教程。Python 的 socket 模块提供了一种用于网络通信的接口,您可以用它来创建服务器和客户端,实现网络编程。
首先,您需要导入 socket 模块:
```python
import socket
```
然后,您可以使用 socket 模块中的函数创建一个服务器或者一个客户端。下面是一个简单的服务器示例:
```python
import socket
# 创建一个 TCP/IP socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定地址和端口
server_address = ('localhost', 12345)
server_socket.bind(server_address)
# 监听连接
server_socket.listen(1)
while True:
# 等待连接
print('等待连接...')
client_socket, client_address = server_socket.accept()
print('连接来自:', client_address)
try:
# 接收数据
data = client_socket.recv(1024)
print('接收到的数据:', data.decode())
# 发送响应
response = 'Hello from server!'
client_socket.sendall(response.encode())
finally:
# 关闭连接
client_socket.close()
```
上述代码创建了一个 TCP/IP 的服务器,并在本地地址 localhost 的端口 12345 上监听连接。当有客户端连接时,它会接收客户端发送的数据,并向客户端发送响应。
下面是一个简单的客户端示例:
```python
import socket
# 创建一个 TCP/IP socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务器
server_address = ('localhost', 12345)
client_socket.connect(server_address)
try:
# 发送数据
message = 'Hello from client!'
client_socket.sendall(message.encode())
# 接收响应
response = client_socket.recv(1024)
print('接收到的响应:', response.decode())
finally:
# 关闭连接
client_socket.close()
```
上述代码创建了一个 TCP/IP 的客户端,并连接到指定的服务器地址和端口。它发送一条消息给服务器,并接收服务器的响应。
这只是一个简单的示例,您可以根据自己的需求进一步扩展和优化。socket 模块还支持其他类型的网络通信,如 UDP,以及其他一些高级功能。希望这个简单的教程对您有所帮助!