Socket模块的基本概念
创建Socket
在Python中,可以使用socket
模块创建Socket对象:
import socket
# 创建一个TCP/IP socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
地址族与Socket类型
-
socket.AF_INET
:IPv4地址族 -
socket.SOCK_STREAM
:TCP流套接字 -
socket.SOCK_DGRAM
:UDP数据报套接字
TCP编程
TCP服务器
以下是一个简单的TCP服务器示例,它接收客户端连接并返回一个简单的消息:
import socket
def tcp_server():
host = '127.0.0.1'
port = 12345
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((host, port))
s.listen(5)
print(f"服务器启动,监听端口 {port}")
while True:
conn, addr = s.accept()
print(f"连接地址: {addr}")
conn.send(b"欢迎访问服务器!")
conn.close()
if __name__ == "__main__":
tcp_server()
TCP客户端
以下是一个简单的TCP客户端示例,它连接到服务器并接收消