Đề thi, bài tập trắc nghiệm online Lập trình Python – Đề 13

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Đề thi, bài tập trắc nghiệm online Lập trình Python

Đề 13 - Bài tập, đề thi trắc nghiệm online Lập trình Python

1. Khái niệm `duck typing` trong Python nghĩa là gì?

A. Kiểm tra kiểu dữ liệu một cách rõ ràng trước khi thực hiện thao tác
B. Kiểu dữ liệu của biến được xác định khi khai báo
C. Không quan tâm đến kiểu dữ liệu cụ thể, chỉ quan tâm đối tượng có phương thức và thuộc tính cần thiết hay không
D. Python là ngôn ngữ `typed` mạnh mẽ

2. Phương thức `__init__` trong class Python được gọi khi nào?

A. Khi class được định nghĩa
B. Khi một đối tượng của class được tạo
C. Khi một phương thức của class được gọi
D. Khi class bị xóa khỏi bộ nhớ

3. Trong Python, module `os` thường được sử dụng để làm gì?

A. Xử lý số liệu thống kê
B. Tương tác với hệ điều hành
C. Làm việc với cơ sở dữ liệu
D. Tạo giao diện đồ họa

4. Hàm nào sau đây trả về số lượng phần tử trong một list, tuple, dictionary hoặc string?

A. length()
B. count()
C. size()
D. len()

5. Biểu thức chính quy (regular expression) trong Python được sử dụng để làm gì?

A. Tạo số ngẫu nhiên
B. Xử lý và tìm kiếm pattern trong string
C. Nén và giải nén file
D. Mã hóa và giải mã dữ liệu

6. Trong Python, kiểu dữ liệu nào sau đây là *không thể thay đổi* (immutable)?

A. list
B. set
C. tuple
D. dictionary

7. Hàm nào sau đây được sử dụng để mở một file trong Python để đọc?

A. openfile()
B. readfile()
C. file.open()
D. open()

8. Trong Python, garbage collection (thu gom rác) là gì và nó hoạt động như thế nào?

A. Một quá trình tối ưu hóa code để giảm dung lượng file
B. Một cơ chế tự động quản lý bộ nhớ, giải phóng bộ nhớ không còn được sử dụng
C. Một phương pháp kiểm soát lỗi và ngoại lệ
D. Một kỹ thuật mã hóa dữ liệu

9. Generator trong Python là gì?

A. Một loại biến đặc biệt lưu trữ nhiều giá trị
B. Một hàm trả về một iterator
C. Một class đặc biệt để tạo đối tượng lặp
D. Một module để tạo số ngẫu nhiên

10. Trong Python, `*args` và `**kwargs` được sử dụng để làm gì trong định nghĩa hàm?

A. Khai báo kiểu dữ liệu của tham số
B. Truyền số lượng tham số biến đổi vào hàm
C. Định nghĩa giá trị mặc định cho tham số
D. Truyền tham số theo vị trí và theo tên

11. Phương thức `extend()` khác với `append()` của list trong Python như thế nào?

A. `extend()` chỉ dùng cho số, `append()` dùng cho mọi kiểu dữ liệu
B. `extend()` thêm một iterable vào list, `append()` thêm một phần tử vào list
C. `extend()` tạo list mới, `append()` sửa đổi list hiện tại
D. `extend()` nhanh hơn `append()`

12. Phương thức `strip()` trong Python được sử dụng cho kiểu dữ liệu nào và làm gì?

A. List, để loại bỏ phần tử trùng lặp
B. String, để loại bỏ khoảng trắng ở đầu và cuối chuỗi
C. Dictionary, để loại bỏ các key có giá trị None
D. Tuple, để loại bỏ phần tử None

13. Mục đích của câu lệnh `try...except` trong Python là gì?

A. Tối ưu hóa hiệu suất code
B. Xử lý ngoại lệ (exceptions) và lỗi
C. Định nghĩa hàm mới
D. Tạo vòng lặp vô hạn

14. Virtual environment trong Python dùng để làm gì?

A. Tăng tốc độ thực thi chương trình Python
B. Cách ly các dependency của dự án Python
C. Quản lý phiên bản Python
D. Biên dịch code Python sang ngôn ngữ máy

15. Kiểu dữ liệu nào sau đây KHÔNG phải là kiểu dữ liệu built-in trong Python?

A. int
B. float
C. complex
D. array

16. Phương thức `pop()` khi được gọi trên một list Python sẽ làm gì?

A. Xóa tất cả phần tử khỏi list
B. Xóa phần tử đầu tiên của list
C. Xóa và trả về phần tử cuối cùng của list (mặc định) hoặc tại index chỉ định
D. Thêm một phần tử vào cuối list

17. Điều gì xảy ra khi bạn cố gắng truy cập một key không tồn tại trong dictionary Python?

A. Trả về giá trị mặc định là None
B. Trả về 0
C. Gây ra lỗi KeyError
D. Tạo key mới với giá trị None

18. Hàm `map()` trong Python hoạt động như thế nào?

A. Áp dụng một hàm lên từng cặp phần tử từ hai hoặc nhiều list
B. Áp dụng một hàm lên từng phần tử của một iterable và trả về một iterator chứa kết quả
C. Lọc các phần tử của một iterable dựa trên một hàm điều kiện
D. Sắp xếp các phần tử của một iterable

19. GIL (Global Interpreter Lock) trong Python là gì và ảnh hưởng đến hiệu năng như thế nào?

A. Một cơ chế quản lý bộ nhớ giúp tăng hiệu năng
B. Một mutex (khóa độc quyền) chỉ cho phép một thread Python native thực thi bytecode tại một thời điểm
C. Một trình biên dịch JIT (Just-In-Time) cải thiện tốc độ thực thi
D. Một kỹ thuật garbage collection hiệu quả

20. Phương thức nào sau đây được sử dụng để thêm một phần tử vào cuối list trong Python?

A. insert()
B. add()
C. append()
D. extend()

21. Khi nào nên sử dụng `set` thay vì `list` trong Python?

A. Khi cần truy cập phần tử theo index nhanh chóng
B. Khi thứ tự của các phần tử quan trọng
C. Khi cần đảm bảo các phần tử là duy nhất và kiểm tra sự tồn tại nhanh chóng
D. Khi cần lưu trữ dữ liệu có cấu trúc phức tạp

22. Đoạn code Python sau sẽ in ra kết quả gì?
```python
for i in range(1, 5):
if i % 2 == 0:
print(i)
```

A. 1 2 3 4
B. 2 4
C. 1 3
D. Không in ra gì

23. Phương thức `__str__` và `__repr__` trong class Python khác nhau như thế nào?

A. `__str__` dùng để tạo bản sao đối tượng, `__repr__` để xóa đối tượng
B. `__str__` dùng để biểu diễn đối tượng dễ đọc cho người dùng, `__repr__` để biểu diễn đối tượng không mơ hồ cho developer
C. `__str__` chỉ dùng cho string, `__repr__` cho mọi kiểu dữ liệu
D. `__str__` nhanh hơn `__repr__`

24. Để tạo một list comprehension lọc các số chẵn từ list `numbers = [1, 2, 3, 4, 5, 6]`, cú pháp đúng là gì?

A. [x for x in numbers if x % 2 == 0]
B. [x if x % 2 == 0 for x in numbers]
C. [for x in numbers if x % 2 == 0: x]
D. list(filter(lambda x: x % 2 == 0, numbers))

25. Trong Python, điều gì sẽ xảy ra nếu bạn chia một số cho 0?

A. Trả về giá trị Infinity
B. Trả về 0
C. Gây ra lỗi ZeroDivisionError
D. Trả về giá trị NaN (Not a Number)

26. Kết quả của biểu thức `3 + 5 * 2 ** 2 - 10 // 3` trong Python là bao nhiêu?

A. 17
B. 18
C. 20
D. 23

27. Sự khác biệt chính giữa `list` và `tuple` trong Python là gì?

A. List có thể chứa các kiểu dữ liệu khác nhau, tuple thì không
B. List là mutable, tuple là immutable
C. List nhanh hơn tuple trong việc truy cập phần tử
D. Tuple có thể được dùng làm key trong dictionary, list thì không

28. Decorator trong Python được sử dụng để làm gì?

A. Tối ưu hóa hiệu suất code
B. Sửa đổi hoặc mở rộng chức năng của hàm hoặc class
C. Kiểm soát truy cập vào biến
D. Tạo giao diện người dùng đồ họa

29. Trong Python, `if __name__ == `__main__`:` thường được sử dụng để làm gì?

A. Khai báo tên biến global
B. Xác định hàm main của chương trình
C. Ngăn chặn việc thực thi code khi module được import
D. Bắt đầu một thread mới

30. Module `json` trong Python được sử dụng để làm gì?

A. Làm việc với hệ điều hành
B. Xử lý dữ liệu dạng JSON (JavaScript Object Notation)
C. Tạo giao diện người dùng
D. Thực hiện các phép toán số học phức tạp

1 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

1. Khái niệm 'duck typing' trong Python nghĩa là gì?

2 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

2. Phương thức `__init__` trong class Python được gọi khi nào?

3 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

3. Trong Python, module `os` thường được sử dụng để làm gì?

4 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

4. Hàm nào sau đây trả về số lượng phần tử trong một list, tuple, dictionary hoặc string?

5 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

5. Biểu thức chính quy (regular expression) trong Python được sử dụng để làm gì?

6 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

6. Trong Python, kiểu dữ liệu nào sau đây là *không thể thay đổi* (immutable)?

7 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

7. Hàm nào sau đây được sử dụng để mở một file trong Python để đọc?

8 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

8. Trong Python, garbage collection (thu gom rác) là gì và nó hoạt động như thế nào?

9 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

9. Generator trong Python là gì?

10 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

10. Trong Python, `*args` và `**kwargs` được sử dụng để làm gì trong định nghĩa hàm?

11 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

11. Phương thức `extend()` khác với `append()` của list trong Python như thế nào?

12 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

12. Phương thức `strip()` trong Python được sử dụng cho kiểu dữ liệu nào và làm gì?

13 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

13. Mục đích của câu lệnh `try...except` trong Python là gì?

14 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

14. Virtual environment trong Python dùng để làm gì?

15 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

15. Kiểu dữ liệu nào sau đây KHÔNG phải là kiểu dữ liệu built-in trong Python?

16 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

16. Phương thức `pop()` khi được gọi trên một list Python sẽ làm gì?

17 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

17. Điều gì xảy ra khi bạn cố gắng truy cập một key không tồn tại trong dictionary Python?

18 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

18. Hàm `map()` trong Python hoạt động như thế nào?

19 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

19. GIL (Global Interpreter Lock) trong Python là gì và ảnh hưởng đến hiệu năng như thế nào?

20 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

20. Phương thức nào sau đây được sử dụng để thêm một phần tử vào cuối list trong Python?

21 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

21. Khi nào nên sử dụng `set` thay vì `list` trong Python?

22 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

22. Đoạn code Python sau sẽ in ra kết quả gì?
```python
for i in range(1, 5):
if i % 2 == 0:
print(i)
```

23 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

23. Phương thức `__str__` và `__repr__` trong class Python khác nhau như thế nào?

24 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

24. Để tạo một list comprehension lọc các số chẵn từ list `numbers = [1, 2, 3, 4, 5, 6]`, cú pháp đúng là gì?

25 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

25. Trong Python, điều gì sẽ xảy ra nếu bạn chia một số cho 0?

26 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

26. Kết quả của biểu thức `3 + 5 * 2 ** 2 - 10 // 3` trong Python là bao nhiêu?

27 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

27. Sự khác biệt chính giữa `list` và `tuple` trong Python là gì?

28 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

28. Decorator trong Python được sử dụng để làm gì?

29 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

29. Trong Python, `if __name__ == '__main__':` thường được sử dụng để làm gì?

30 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình Python

Tags: Bộ đề 13

30. Module `json` trong Python được sử dụng để làm gì?