Logo Zephyrnet

Hơn 30 MCQ về Xử lý lỗi Python (thử ngoại trừ)

Ngày:

Chào mừng bạn đến với Bài kiểm tra MCQ về xử lý lỗi Python! Xử lý lỗi là một khía cạnh thiết yếu của lập trình và Python cung cấp các cơ chế mạnh mẽ để quản lý các ngoại lệ và lỗi có thể xảy ra trong quá trình thực thi chương trình. Bài kiểm tra này nhằm mục đích kiểm tra sự hiểu biết của bạn về các khái niệm khác nhau liên quan đến xử lý lỗi trong Python, bao gồm tryexcept khối, nâng cao và bắt ngoại lệ, sử dụng finally khối, và nhiều hơn nữa. Mỗi câu hỏi đều có nhiều lựa chọn, chỉ có một câu trả lời đúng. Hãy dành thời gian để đọc kỹ từng câu hỏi và chọn phương án tốt nhất. Hãy cùng bắt đầu và khám phá cách xử lý lỗi Python!

Xử lý lỗi Python

Q1. Mục đích của khối thử trong xử lý lỗi Python là gì?

a) Để xác định khối mã có thể xảy ra ngoại lệ

b) Bắt và xử lý các ngoại lệ xảy ra trong khối

c) Để đảm bảo mã thực thi không có bất kỳ lỗi nào

d) Chấm dứt chương trình nếu xảy ra ngoại lệ

Câu trả lời: a

Giải thích: Khối thử xác định một khối mã có thể xảy ra ngoại lệ.

Q2. Từ khóa nào được sử dụng để bắt ngoại lệ trong Python?

một sự cố gắng

b) bắt

c) ngoại trừ

d) tay cầm

Câu trả lời: c

Giải thích: Từ khóa ngoại trừ được sử dụng để bắt và xử lý các ngoại lệ trong Python.

Q3. Điều gì xảy ra khi chương trình Python gặp lỗi trong quá trình thực thi?

a) Lỗi

b) Ngoại lệ

c) Lỗi

d) Lỗi

Câu trả lời: b

Giải thích: Trong Python, lỗi trong quá trình thực thi được thể hiện dưới dạng ngoại lệ.

Q4. Điều nào sau đây KHÔNG phải là ngoại lệ Python tiêu chuẩn?

a) Lỗi khóa

b) Ngoại lệ giá trị

c) Lỗi chỉ mục

d) Lỗi Loại

Câu trả lời: b

Giải thích: ValueException không phải là ngoại lệ Python tiêu chuẩn. Nó phải là ValueError.

Q5. Làm cách nào bạn có thể xử lý nhiều trường hợp ngoại lệ trong một khối ngoại trừ?

a) Phân tách các ngoại lệ bằng dấu phẩy

b) Sử dụng các khối ngoại trừ lồng nhau

c) Chỉ sử dụng từ khóa ngoại trừ một lần

d) Không thể xử lý nhiều ngoại lệ trong một khối ngoại trừ

Câu trả lời: a

Giải thích: Bạn có thể phân tách nhiều ngoại lệ bằng cách sử dụng dấu phẩy trong một khối ngoại trừ.

Q6. Từ khóa Python nào được sử dụng để đưa ra ngoại lệ theo cách thủ công?

a) ném

b) nâng cao

c) ngoại lệ

d) kích hoạt

Câu trả lời: b

Giải thích: Từ khóa raise được sử dụng để đưa ra các ngoại lệ theo cách thủ công trong Python.

Q7. Khối cuối cùng trong xử lý lỗi Python đảm bảo điều gì?

a) Nó đảm bảo mã bên trong nó sẽ luôn thực thi, bất kể ngoại lệ có xảy ra hay không.

b) Nó đảm bảo chương trình sẽ chấm dứt nếu xảy ra ngoại lệ.

c) Nó đảm bảo rằng chương trình sẽ bỏ qua việc thực thi mã nếu xảy ra ngoại lệ.

d) Nó đảm bảo rằng chỉ mã trong khối cuối cùng mới thực thi nếu xảy ra ngoại lệ.

Câu trả lời: a

Giải thích: Khối cuối cùng đảm bảo rằng mã bên trong nó sẽ luôn thực thi, bất kể ngoại lệ có xảy ra hay không.

Q8. Điều nào sau đây đúng về khối else trong xử lý lỗi Python?

a) Nó được thực thi nếu xảy ra ngoại lệ.

b) Nó được thực thi nếu không có ngoại lệ nào xảy ra trong khối try.

c) Nó xử lý các ngoại lệ xảy ra trong khối try.

d) Nó được thực thi thay vì khối cuối cùng.

Câu trả lời: b

Giải thích: Python thực thi khối else nếu không có ngoại lệ nào xảy ra trong khối try.

Q9. Mục đích của câu lệnh khẳng định trong Python là gì?

a) Xử lý các trường hợp ngoại lệ

b) Chấm dứt chương trình

c) Kiểm tra xem điều kiện có đúng không

d) Để đưa ra một ngoại lệ

Câu trả lời: c

Giải thích: Câu lệnh khẳng định kiểm tra xem một điều kiện có đúng trong Python hay không. Nếu điều kiện sai, nó sẽ báo lỗi AssertionError.

Q10.Phương thức nào sau đây KHÔNG phải là phương thức được sử dụng phổ biến của lớp Exception trong Python?

a) __str__()

b) __init__()

c) __vì__()

d) __repr__()

Câu trả lời: c

Giải thích: __ Cause__() không phải là một phương thức của lớp Ngoại lệ. Nó được sử dụng để tìm ra nguyên nhân của ngoại lệ.

Q11. Câu nào sau đây đúng về mệnh đề ngoại trừ trong Python?

a) Nó là bắt buộc trong khối thử ngoại trừ.

b) Nó bắt tất cả các ngoại lệ theo mặc định.

c) Nó phải được đặt trước khối try.

d) Nó có thể chỉ định loại ngoại lệ cần bắt.

Câu trả lời: d

Giải thích: Mệnh đề ngoại trừ có thể chỉ định loại ngoại lệ cần bắt.

Q12. Đầu ra của đoạn mã sau là gì?

try:
    x = 10 / 0
except ZeroDivisionError:
    print("Division by zero")
finally:
    print("Finally block")

a) Chia cho 0

Cuối cùng chặn

b) Cuối cùng chặn

c) Chia cho số 0

d) Lỗi ZeroDivision

Câu trả lời: a

Giải thích: Mã sẽ đưa ra ZeroDivisionError, bắt nó, in “Chia cho số 0” và sau đó thực hiện thao tác in khối cuối cùng “Khối cuối cùng”.

Q13. Từ khóa nào sau đây được dùng để xử lý khối ngoại lệ trong Python?

một bàn tay

b) cứu hộ

c) ngoại trừ

d) bắt

Câu trả lời: c

Giải thích: ngoại trừ được sử dụng để xử lý các khối ngoại lệ trong Python.

Q14. Đoạn mã Python sau đây làm gì?

try:
    # Some code that may raise an exception
except:
    pass

a) Nó đưa ra một ngoại lệ.

b) Nó bắt tất cả các ngoại lệ và bỏ qua chúng.

c) Nó chấm dứt chương trình.

d) Nó xử lý các ngoại lệ một cách khéo léo.

Câu trả lời: b

Giải thích: Mã này nắm bắt tất cả các ngoại lệ và bỏ qua chúng do câu lệnh pass.

Q15. Điều gì xảy ra nếu một ngoại lệ xảy ra trong chính khối cuối cùng?

a) Ngoại lệ được bắt bởi khối ngoại trừ.

b) Chương trình kết thúc.

c) Ngoại lệ lan truyền lên ngăn xếp cuộc gọi.

d) Ngoại lệ bị bỏ qua.

Câu trả lời: c

Giải thích: Nếu một ngoại lệ xảy ra trong chính khối cuối cùng, nó sẽ truyền lên ngăn xếp cuộc gọi.

Q16. Điều nào sau đây KHÔNG phải là ngoại lệ tích hợp phổ biến trong Python?

a) Lỗi khóa

b) Lỗi không tìm thấy tệp

c) Lỗi chỉ mục

d) Lỗi cú pháp

Câu trả lời: d

Giải thích: SyntaxError là một lỗi cú pháp phổ biến nhưng nó không phải là một lớp ngoại lệ tích hợp.

Q17. Mục đích của hàm sys.exc_info() trong Python là gì?

a) Nó đưa ra một ngoại lệ.

b) Nó trả về thông tin về ngoại lệ hiện tại đang được xử lý.

c) Nó chấm dứt chương trình.

d) Nó in dấu vết của ngoại lệ.

Câu trả lời: b

Giải thích: sys.exc_info() trả về một bộ thông tin về ngoại lệ hiện tại đang được xử lý bằng Python.

Q18. Từ khóa nào được sử dụng để khôi phục lại ngoại lệ cuối cùng đã bị phát hiện trong Python?

a) ném lại

b) ném lại_last

c) nâng_cuối cùng

d) nâng cao

Câu trả lời: d

Giải thích: Trong Python, các nhà phát triển sử dụng từ khóa raise để khôi phục lại ngoại lệ cuối cùng đã bị bắt.

Q19. Đầu ra của đoạn mã sau là gì?

try:
    raise Exception("An error occurred")
except Exception as e:
    print(e)
finally:
    print("Finally block")

a) Đã xảy ra lỗi

Cuối cùng chặn

b) Cuối cùng chặn

c) Xảy ra lỗi

d) Ngoại lệ

Câu trả lời: a

Giải thích: Mã này tạo ra một Ngoại lệ, bắt nó, in thông báo lỗi và sau đó thực thi khối cuối cùng.

Q20. Câu nào đúng về việc xử lý các ngoại lệ trong Python?

a) Trình xử lý ngoại lệ có thể bắt được các ngoại lệ được tạo ra bởi các hàm mà nó gọi.

b) Trình xử lý ngoại lệ không thể bắt được các ngoại lệ do các hàm mà nó gọi ra.

c) Trình xử lý ngoại lệ chỉ bắt các ngoại lệ được nêu ra trong cùng một khối.

d) Trình xử lý ngoại lệ chỉ có thể bắt các ngoại lệ cùng loại.

Câu trả lời: a

Giải thích: Trình xử lý ngoại lệ có thể bắt các ngoại lệ được tạo ra bởi các hàm mà nó gọi.

Q21. Mục đích của mô-đun truy nguyên trong Python là gì?

a) Nó cho phép bạn tùy chỉnh các thông báo lỗi.

b) Nó in thông tin chi tiết về các trường hợp ngoại lệ.

c) Nó xử lý các ngoại lệ trong các ứng dụng đa luồng.

d) Nó đưa ra các ngoại lệ dựa trên các điều kiện do người dùng xác định.

Câu trả lời: b

Giải thích: Mô-đun truy nguyên cung cấp các chức năng in thông tin chi tiết về các ngoại lệ.

Q22. Câu nào sau đây đúng về câu lệnh khẳng định trong Python?

a) Nó được sử dụng để xử lý các trường hợp ngoại lệ.

b) Nó kết thúc chương trình nếu một điều kiện là đúng.

c) Nó đưa ra một ngoại lệ nếu điều kiện sai.

d) Nó tương tự như khối thử ngoại trừ.

Câu trả lời: c

Giải thích: Câu lệnh khẳng định sẽ đưa ra AssertionError nếu điều kiện sai.

Q23. Làm cách nào bạn có thể tạo một lớp ngoại lệ tùy chỉnh trong Python?

a) Bằng cách kế thừa từ lớp Exception

b) Bằng cách sử dụng từ khóa ném

c) Bằng cách sử dụng từ khóa custom_Exception

d) Bằng cách định nghĩa một hàm với tên của ngoại lệ

Câu trả lời: a

Giải thích: Bạn có thể tạo một lớp ngoại lệ tùy chỉnh bằng cách kế thừa từ lớp Ngoại lệ.

Q24. Hàm sys.exit() làm gì trong Python?

a) Đưa ra một ngoại lệ

b) Kết thúc chương trình

c) In thông báo ra bàn điều khiển

d) Xử lý các ngoại lệ

Câu trả lời: b

Giải thích: sys.exit() chấm dứt chương trình.

Q25. Điều nào sau đây đúng về khối else trong xử lý lỗi Python?

a) Nó được thực thi nếu xảy ra ngoại lệ.

b) Nó xử lý các ngoại lệ xảy ra trong khối try.

c) Nó chỉ được thực thi nếu có ngoại lệ xảy ra.

d) Nó được thực thi nếu không có ngoại lệ nào xảy ra trong khối try.

Câu trả lời: d

Giải thích: Nếu không có ngoại lệ nào xảy ra trong khối try thì Python sẽ thực thi khối else.

Q26. Mục đích của câu lệnh raise trong Python là gì?

a) Để bắt ngoại lệ

b) Bỏ qua các ngoại lệ

c) Để nêu lại các ngoại lệ

d) Chấm dứt chương trình

Câu trả lời: c

Giải thích: Trong Python, các nhà phát triển sử dụng câu lệnh raise để đưa ra lại các ngoại lệ.

Q27. Điều nào sau đây KHÔNG phải là ngoại lệ Python tiêu chuẩn?

a) Lỗi cú pháp

b) Lỗi phân chia không

c) Lỗi tràn

d) Lỗi thời gian chạy

Câu trả lời: c

Giải thích: OverflowError là một ngoại lệ tiêu chuẩn của Python, nhưng nó không phổ biến như những ngoại lệ khác được liệt kê.

Q28. Mục đích của khối thử ngoại trừ trong Python là gì?

a) Để bắt ngoại lệ và thực thi mã thay thế

b) Để thực thi mã luôn chạy

c) Để xử lý các ngoại lệ và thực thi mã nếu không có ngoại lệ nào xảy ra

d) Chấm dứt chương trình nếu xảy ra ngoại lệ

Câu trả lời: c

Giải thích: Trong Python, các nhà phát triển sử dụng khối thử ngoại trừ để xử lý các ngoại lệ và thực thi mã nếu không có ngoại lệ nào xảy ra.

Câu 29. Từ khóa nào được sử dụng để định nghĩa lớp ngoại lệ tùy chỉnh trong Python?

a) bắt

b) nâng cao

c) lớp

d) ngoại lệ

Câu trả lời: c

Giải thích: Trong Python, các nhà phát triển sử dụng từ khóa class để xác định các lớp ngoại lệ tùy chỉnh.

Q30. Mục đích của khối cuối cùng trong xử lý lỗi Python là gì?

a) Xử lý các trường hợp ngoại lệ

b) Đưa ra các ngoại lệ

c) Để đảm bảo rằng mã nhất định sẽ luôn được thực thi

d) Chấm dứt chương trình

Câu trả lời: c

Giải thích: Khối cuối cùng đảm bảo rằng một số mã nhất định sẽ được thực thi, bất kể có xảy ra ngoại lệ hay không.

Q31. Trường hợp ngoại lệ nào sau đây được nêu ra khi cố gắng truy cập một chỉ mục trong danh sách không tồn tại?

a) Lỗi giá trị

b) Lỗi phím

c) Lỗi chỉ mục

d) Lỗi Loại

Câu trả lời: c

Giải thích: Việc cố gắng truy cập một chỉ mục nằm ngoài phạm vi theo trình tự như danh sách sẽ gây ra lỗi IndexError.

Q32. Trong khối thử ngoại trừ, chúng ta có thể có nhiều khối ngoại trừ không?

a) Không, chỉ cho phép một khối ngoại trừ

b) Có, nhưng chỉ khi họ xử lý các loại ngoại lệ khác nhau

c) Có, bất kể loại ngoại lệ nào họ xử lý

d) Có, nhưng chỉ khi chúng được lồng vào nhau

Câu trả lời: b

Giải thích: Trong Python, việc sắp xếp nhiều khối ngoại trừ từ cụ thể nhất đến ít cụ thể nhất được coi là cách làm tốt vì Python kiểm tra chúng theo thứ tự và thực thi khối khớp đầu tiên.

Q33. Câu nào sau đây đúng về thứ tự các khối ngoại trừ trong cấu trúc thử ngoại trừ?

a) Thứ tự của các khối ngoại trừ không quan trọng

b) Trình xử lý ngoại lệ cụ thể nhất phải được ưu tiên trước

c) Các trình xử lý ngoại lệ chung nhất phải được ưu tiên trước

d) Python đưa ra Lỗi Cú pháp nếu các khối ngoại trừ không theo đúng thứ tự

Câu trả lời: b

Giải thích: Trong Python, cách tốt nhất là sắp xếp nhiều khối ngoại trừ từ cụ thể nhất đến ít cụ thể nhất vì Python kiểm tra chúng theo thứ tự và thực thi khối khớp đầu tiên.

Chúc mừng bạn đã hoàn thành Bài kiểm tra MCQ về xử lý lỗi Python! Chúng tôi hy vọng bài kiểm tra này đã giúp củng cố sự hiểu biết của bạn về các khái niệm và kỹ thuật xử lý lỗi Python. Quản lý ngoại lệ một cách hiệu quả là rất quan trọng để viết mã Python mạnh mẽ và đáng tin cậy. Bằng cách nắm vững cách xử lý lỗi, bạn có thể đảm bảo rằng chương trình của mình xử lý khéo léo các tình huống không mong muốn và cung cấp phản hồi có ý nghĩa cho người dùng. Hãy tiếp tục thực hành và khám phá các cơ chế xử lý lỗi của Python để trở thành nhà phát triển Python thành thạo. Nếu bạn có bất kỳ thắc mắc nào hoặc muốn tìm hiểu sâu hơn về bất kỳ chủ đề nào, đừng ngần ngại tiếp tục hành trình học tập của mình. Chúc mừng mã hóa!

Bạn cũng có thể đăng ký tham gia Khóa học Python miễn phí Hôm nay!

Đọc thêm các bài viết của chúng tôi liên quan đến MCQ trong Python:

tại chỗ_img

Tin tức mới nhất

tại chỗ_img