溫馨提示×

Ubuntu Python網絡編程如何實現

小樊
37
2025-02-21 19:53:02
欄目: 編程語言

在Ubuntu上使用Python進行網絡編程,你可以使用Python的內置庫socket來實現。以下是一個簡單的TCP服務器和客戶端的示例。

TCP服務器

# server.py
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.decode('utf-8')}")

    # 發送數據
    client_socket.sendall(b"Hello, Client!")

    # 關閉客戶端連接
    client_socket.close()

TCP客戶端

# client.py
import socket

# 創建一個socket對象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 連接到服務器
client_socket.connect(('127.0.0.1', 12345))

# 發送數據
client_socket.sendall(b"Hello, Server!")

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

# 關閉客戶端連接
client_socket.close()

運行示例

  1. 在終端中運行服務器腳本:
python3 server.py
  1. 在另一個終端中運行客戶端腳本:
python3 client.py

你應該會看到服務器和客戶端之間的通信。

UDP服務器和客戶端

如果你想使用UDP協議,可以將socket.SOCK_STREAM替換為socket.SOCK_DGRAM,并相應地調整代碼。

UDP服務器

# udp_server.py
import socket

# 創建一個socket對象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 綁定IP地址和端口
server_socket.bind(('0.0.0.0', 12345))
print("UDP Server is listening on port 12345")

while True:
    # 接收數據
    data, client_address = server_socket.recvfrom(1024)
    print(f"Received from {client_address}: {data.decode('utf-8')}")

    # 發送數據
    server_socket.sendto(b"Hello, Client!", client_address)

UDP客戶端

# udp_client.py
import socket

# 創建一個socket對象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 服務器地址和端口
server_address = ('127.0.0.1', 12345)

# 發送數據
client_socket.sendto(b"Hello, Server!", server_address)

# 接收數據
data, _ = client_socket.recvfrom(1024)
print(f"Received: {data.decode('utf-8')}")

# 關閉客戶端連接
client_socket.close()

運行UDP示例

  1. 在終端中運行UDP服務器腳本:
python3 udp_server.py
  1. 在另一個終端中運行UDP客戶端腳本:
python3 udp_client.py

你應該會看到UDP服務器和客戶端之間的通信。

這些示例展示了如何在Ubuntu上使用Python進行基本的網絡編程。你可以根據需要擴展這些示例,添加更多的功能和復雜性。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女