我還沒有測驗過,但是如果不執行連接,會列印最后一句嗎?
def connect_to():
print(f"[*] Connecting to {receiver_ip}:{receiver_port}")
socket.connect((receiver_ip, receiver_port))
print(f"[ ] Connected")
如何檢查我是否正確連接并做出正確的 if 陳述句?
uj5u.com熱心網友回復:
使用 try except 來捕獲錯誤以及連接是否成功
uj5u.com熱心網友回復:
當套接字連接失敗時,它會引發socket.error例外。您可以使用Python 中的一些錯誤處理技術來捕獲該特定錯誤。
import socket
def connect(ip, port):
s = socket.socket()
try:
print(f"Connecting to {ip}:{port}")
s.connect((ip, port))
except socket.error as msg:
print(f"Failed to connect: {msg}")
else:
print(f"Successfully connected to {ip}:{port}")
如何檢查我是否正確連接并做出正確的 if 陳述句?
except如果在 try 塊中捕獲到指定的錯誤,則該塊將被執行。另一方面,else當沒有引發或處理錯誤時,塊將被執行。您可以將except塊視為“if error”,將else塊視為“if not error”。
或者,您可以捕獲錯誤并使用自定義訊息重新提出錯誤。
import socket
def connect(ip, port):
s = socket.socket()
try:
print(f"Connecting to {ip}:{port}")
s.connect((ip, port))
except socket.error as msg:
raise socket.error(f"Failed to connect: {msg}")
print(f"Successfully connected to {ip}:{port}")
通過接住和重新加注,您不必再使用該else塊。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/344100.html
