linux

Linux下Python如何进行网络编程

小樊
49
2025-09-16 13:20:14
栏目: 编程语言

在Linux下使用Python进行网络编程,你可以使用Python的内置库socketsocket库提供了底层的网络接口,可以用于实现各种网络协议,如TCP、UDP等。以下是一个简单的TCP服务器和客户端的示例。

TCP服务器

import socket

# 创建一个socket对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 绑定IP地址和端口
server_socket.bind(('0.0.0.0', 12345))

# 监听连接
server_socket.listen(5)
print("Server is listening on port 12345")

while True:
    # 接受客户端连接
    client_socket, client_address = server_socket.accept()
    print(f"Connection from {client_address}")

    # 接收数据
    data = client_socket.recv(1024)
    print(f"Received data: {data.decode('utf-8')}")

    # 发送数据
    client_socket.sendall("Hello from server".encode('utf-8'))

    # 关闭客户端连接
    client_socket.close()

TCP客户端

import socket

# 创建一个socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 连接服务器
client_socket.connect(('127.0.0.1', 12345))

# 发送数据
client_socket.sendall("Hello from client".encode('utf-8'))

# 接收数据
data = client_socket.recv(1024)
print(f"Received data: {data.decode('utf-8')}")

# 关闭客户端连接
client_socket.close()

首先运行服务器端代码,然后运行客户端代码。服务器将接收客户端发送的数据,并发送一条回复。

除了socket库之外,还有其他一些第三方库可以用于网络编程,如asyncioTwistedTornado等。这些库提供了更高级别的抽象和功能,可以根据你的需求选择合适的库进行网络编程。

0
看了该问题的人还看了