本文是关于 Python 网络编程的入门教程,我们将从基础概念开始,逐步深入。
基础概念
网络编程是指使用编程语言来编写能够通过网络进行通信的程序。Python 提供了多种库来支持网络编程,例如 socket
、requests
等。
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 网络编程