Socket 编程是网络编程的基础,Python 提供了丰富的库来简化 Socket 编程。以下是一些基础的 Socket 编程概念和示例。
基础概念
- Socket:套接字是网络通信的基石,它允许不同主机上的进程进行数据交换。
- TCP/IP:传输控制协议/互联网协议,是互联网中使用的标准协议。
Python Socket 库
Python 中,我们可以使用 socket
库来进行 Socket 编程。
import socket
# 创建 socket 对象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
port = 9999
# 绑定端口
s.bind((host, port))
# 设置最大连接数,超过后排队
s.listen(5)
while True:
# 建立客户端连接
client_socket, addr = s.accept()
print('连接地址: %s' % str(addr))
msg = '欢迎!'
client_socket.send(msg.encode('utf-8'))
client_socket.close()
客户端示例
客户端可以使用以下代码连接到服务器:
import socket
# 创建 socket 对象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
port = 9999
# 连接服务,指定主机和端口
s.connect((host, port))
# 接收小于 1024 字节的数据
msg = s.recv(1024)
print(msg.decode('utf-8'))
s.close()
扩展阅读
更多关于 Python Socket 编程的信息,请参考本站的其他教程。