Tôi hiểu cú pháp cơ bản try:
except:
finally:
để xử lý lỗi pythons. Những gì tôi không hiểu là làm thế nào để tìm thấy các tên lỗi thích hợp để làm cho mã có thể đọc được.Hiểu mã lỗi bằng Python và sử dụng các tên lỗi có ý nghĩa
Ví dụ:
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.settimeout(60)
char = s.recv(1)
except socket.timeout:
pass
vì vậy nếu ổ cắm đặt ra một thời gian chờ, các lỗi được bắt. Làm thế nào về nếu tôi đang tìm kiếm một kết nối từ chối. Tôi biết số lỗi là 10061. Ở đâu trong tài liệu tôi tìm để tìm một tên đầy đủ ý nghĩa như timeout. Sẽ có một nơi tương tự để tìm các mô-đun python khác? Tôi biết đây là một câu hỏi newbie nhưng tôi đã được đưa vào xử lý lỗi mã của tôi một thời gian bây giờ, mà không thực sự biết nơi để tìm các mô tả lỗi và tên.
EDIT:
Cảm ơn mọi phản hồi của bạn.
except socket.error, exception:
if exception.errno == ETIMEDOUT:
pass
sẽ đạt được kết quả tương tự như
except socket.timeout:
pass
ok, vậy tôi sẽ viết như thế nào để bắt ngoại lệ errno.ECONNREFUSED – Richard
bạn bắt socket.error và sau đó kiểm tra mã. – unbeli