Python是一種非常流行和實用的編程語言,可以幫助我們完成各種各樣的任務。其中一項任務就是監聽本地端口。下面我們來詳細介紹一下Python如何監聽本地端口。
首先,我們需要導入Python的socket庫,并建立一個socket對象:
import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
其中,socket.AF_INET指定了使用IPv4,socket.SOCK_STREAM指定了使用TCP協議。
然后,我們需要綁定IP地址和端口號:
s.bind(('127.0.0.1', 8888))
這里我們使用了本地IP地址127.0.0.1和端口號8888。
接下來,我們需要開始監聽端口:
s.listen(5)
這里的參數5指定了可以同時處理的最大連接數。
然后,我們進入一個循環,不斷等待新連接的到來:
while True: conn, addr = s.accept() print('New connection from %s:%s' % addr) conn.close()
在這個循環中,我們先使用s.accept()方法等待新連接的到來。當有新連接時,accept()方法會返回一個conn對象,該對象代表了新連接的socket,還會返回一個addr對象,該對象包含了客戶端的IP地址和端口號。我們可以使用print語句打印出這個信息。
然后,我們使用conn.close()關閉連接。
最后,我們需要在程序結束時關閉socket:
s.close()
這就是Python監聽本地端口的基本流程。當然,我們還可以在這個基礎上進一步擴展,比如可以對客戶端發送的數據進行處理,或者提供一個交互式的命令行界面等。