本文是关于 Python 网络编程的入门教程,我们将从基础概念开始,逐步深入。

基础概念

网络编程是指使用编程语言来编写能够通过网络进行通信的程序。Python 提供了多种库来支持网络编程,例如 socketrequests 等。

1. socket

socket 是 Python 中最常用的网络编程库之一,它提供了创建和操作套接字(socket)的接口。

  • 创建套接字:使用 socket.socket() 函数创建一个套接字。
  • 绑定地址:使用 socket.bind() 函数将套接字绑定到指定的地址和端口。
  • 监听连接:使用 socket.listen() 函数使套接字开始监听传入的连接请求。
  • 接受连接:使用 socket.accept() 函数接受传入的连接请求。
  • 发送数据:使用 socket.send() 函数发送数据。
  • 接收数据:使用 socket.recv() 函数接收数据。

示例代码

以下是一个简单的客户端-服务器示例:

# 服务器端
import socket

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind(('localhost', 12345))
server_socket.listen()

print("服务器启动,等待连接...")

client_socket, client_address = server_socket.accept()
print(f"连接来自 {client_address}")

data = client_socket.recv(1024)
print(f"接收到的数据:{data.decode()}")

client_socket.sendall(b"Hello, client!")
client_socket.close()
server_socket.close()
# 客户端
import socket

client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('localhost', 12345))

client_socket.sendall(b"Hello, server!")

data = client_socket.recv(1024)
print(f"接收到的数据:{data.decode()}")

client_socket.close()

扩展阅读

想要了解更多关于 Python 网络编程的知识,可以阅读以下教程:

Python 网络编程