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

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

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

1. 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 cho tham số hàm
B. Truyền số lượng tham số cố định vào hàm
C. Truyền số lượng tham số tùy ý (biến đổi) vào hàm: `*args` cho positional arguments, `**kwargs` cho keyword arguments
D. Định nghĩa giá trị mặc định cho tham số hàm

2. Giả sử bạn có một list lồng nhau `matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]`. Làm thế nào để truy cập vào số 5?

A. matrix[5]
B. matrix[1][1]
C. matrix[2][2]
D. matrix[5][5]

3. Decorator trong Python là gì?

A. Một kiểu dữ liệu đặc biệt để trang trí giao diện người dùng
B. Một cách để sửa đổi hoặc mở rộng chức năng của hàm hoặc class mà không cần thay đổi trực tiếp code của chúng
C. Một loại comment đặc biệt để ghi chú về hàm
D. Một module để quản lý các package trong Python

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

A. `==` so sánh giá trị, `is` so sánh kiểu dữ liệu
B. `==` so sánh tham chiếu đối tượng, `is` so sánh giá trị
C. `==` so sánh giá trị, `is` so sánh identity (tham chiếu đối tượng trong bộ nhớ)
D. `==` và `is` hoàn toàn giống nhau, có thể sử dụng thay thế

5. Đ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?

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

6. Trong Python, comment (chú thích) một dòng được bắt đầu bằng ký tự nào?

A. //
B. /*
C. #
D. --

7. Khái niệm `list comprehension` trong Python dùng để làm gì?

A. Tạo ra một list các số ngẫu nhiên
B. Tạo một list mới bằng cách áp dụng một biểu thức cho mỗi phần tử của một iterable
C. Sắp xếp các phần tử trong list theo thứ tự
D. Tìm kiếm một phần tử cụ thể trong list

8. Trong Python, vòng lặp `for` thường được sử dụng để lặp qua:

A. Chỉ số số nguyên
B. Các hàm
C. Các iterable objects (ví dụ: list, tuple, string)
D. Các biến boolean

9. Từ khóa nào được sử dụng để định nghĩa một hàm trong Python?

A. function
B. def
C. func
D. define

10. Đoạn code Python sau in ra kết quả gì:
`a = [1, 2, 3]
b = a
b[0] = 5
print(a)`

A. [1, 2, 3]
B. [5, 2, 3]
C. [1, 5, 3]
D. [5, 5, 3]

11. Đoạn code Python sau in ra gì:
`def func(x):
return x * 2
print(func(`3`))`

A. 6
B. 33
C. Error
D. 9

12. Mục đích của `if __name__ == `__main__`:` trong Python script là gì?

A. Bắt đầu định nghĩa một class
B. Kiểm tra xem script có đang được chạy trực tiếp hay được import như một module
C. Khai báo biến main trong chương trình
D. Đánh dấu đây là hàm main của chương trình

13. Cho đoạn code:
`x = 5
def change_x():
x = 10
change_x()
print(x)`
Giá trị in ra của `x` là:

A. 10
B. 5
C. Error
D. None

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

A. `extend()` thêm một phần tử vào list, còn `append()` thêm nhiều phần tử
B. `append()` thêm một phần tử vào list, còn `extend()` thêm các phần tử của một iterable vào list
C. `extend()` chỉ dùng cho string, còn `append()` dùng cho mọi kiểu dữ liệu
D. `append()` chỉ thêm vào đầu list, còn `extend()` thêm vào cuối list

15. Module `os` trong Python thường được sử dụng để làm gì?

A. Thực hiện các phép toán số học
B. Tương tác với hệ điều hành (ví dụ: thao tác file, thư mục)
C. Xử lý dữ liệu dạng bảng
D. Tạo giao diện đồ họa người dùng

16. Kết quả của đoạn code Python sau là gì:
`print(3 > 2 > 1)`

A. True
B. False
C. Error
D. None

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

A. Xóa tất cả phần tử khỏi list
B. Xóa và trả về phần tử CUỐI CÙNG của list
C. Xóa và trả về phần tử ĐẦU TIÊN của list
D. Đảo ngược thứ tự các phần tử trong list

18. Giá trị trả về của hàm `len()` khi truyền vào một dictionary là gì?

A. Tổng số ký tự trong tất cả các key và value
B. Số lượng cặp key-value trong dictionary
C. Số lượng key trong dictionary
D. Số lượng value trong dictionary

19. Trong Python, exception handling (xử lý ngoại lệ) được thực hiện bằng các khối lệnh nào?

A. if-else
B. for-loop
C. try-except
D. while-loop

20. Toán tử `%` trong Python dùng để làm gì?

A. Phép chia phần trăm
B. Phép chia lấy phần nguyên
C. Phép chia lấy phần dư
D. Phép lũy thừa

21. Hàm `range(start, stop, step)` tạo ra dãy số như thế nào?

A. Từ `start` đến `stop` (bao gồm cả `stop`), bước nhảy `step`
B. Từ `start` đến `stop` (KHÔNG bao gồm `stop`), bước nhảy `step`
C. Từ `start` đến `stop` (bao gồm cả `stop`), bước nhảy mặc định là 1
D. Từ `start` đến `stop` (KHÔNG bao gồm `stop`), bước nhảy mặc định là 1 nếu `step` không được chỉ định

22. Phương thức `super()` được sử dụng trong lập trình hướng đối tượng Python để làm gì?

A. Gọi một hàm static của class
B. Truy cập các thuộc tính private của class
C. Gọi phương thức của class cha (superclass) từ class con (subclass)
D. Tạo một instance mới của class

23. Hàm nào sau đây KHÔNG phải là hàm built-in (tích hợp sẵn) trong Python?

A. len()
B. print()
C. sqrt()
D. int()

24. Kiểu dữ liệu nào sau đây thường được sử dụng để lưu trữ các cặp key-value trong Python?

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

25. Phương thức `strip()` được sử dụng để làm gì với string trong Python?

A. Chuyển đổi string thành chữ hoa
B. Chuyển đổi string thành chữ thường
C. Xóa khoảng trắng ở đầu và cuối string
D. Đảo ngược string

26. Đâu là kiểu dữ liệu KHÔNG THỂ THAY ĐỔI (immutable) trong Python?

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

27. 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. append()
C. extend()
D. add()

28. Generator trong Python mang lại lợi ích chính nào về mặt hiệu suất so với list thông thường khi làm việc với lượng dữ liệu lớn?

A. Generator thực thi nhanh hơn list trong mọi trường hợp
B. Generator lưu trữ tất cả các giá trị trong bộ nhớ cùng một lúc, giúp truy cập nhanh hơn
C. Generator tạo ra các giá trị một cách tuần tự (lazy evaluation), tiết kiệm bộ nhớ vì không lưu trữ toàn bộ dữ liệu cùng lúc
D. Generator có thể dễ dàng chuyển đổi thành list khi cần thiết

29. Phương thức `split()` của string dùng để làm gì?

A. Nối hai string lại với nhau
B. Chia một string thành một list các substring dựa trên một dấu phân cách
C. Tìm kiếm một substring trong string
D. Thay thế một substring bằng một substring khác

30. Khi nào nên sử dụng list comprehension thay vì vòng lặp `for` truyền thống để tạo list trong Python?

A. Khi cần tạo list chứa các số ngẫu nhiên
B. Khi cần tạo list dựa trên một iterable và biểu thức đơn giản, để code ngắn gọn và dễ đọc hơn
C. Khi cần thực hiện các thao tác phức tạp trên mỗi phần tử
D. Khi cần lặp qua dictionary

1 / 30

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

Tags: Bộ đề 1

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

2 / 30

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

Tags: Bộ đề 1

2. Giả sử bạn có một list lồng nhau `matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]`. Làm thế nào để truy cập vào số 5?

3 / 30

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

Tags: Bộ đề 1

3. Decorator trong Python là gì?

4 / 30

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

Tags: Bộ đề 1

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

5 / 30

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

Tags: Bộ đề 1

5. Đ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?

6 / 30

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

Tags: Bộ đề 1

6. Trong Python, comment (chú thích) một dòng được bắt đầu bằng ký tự nào?

7 / 30

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

Tags: Bộ đề 1

7. Khái niệm 'list comprehension' trong Python dùng để làm gì?

8 / 30

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

Tags: Bộ đề 1

8. Trong Python, vòng lặp `for` thường được sử dụng để lặp qua:

9 / 30

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

Tags: Bộ đề 1

9. Từ khóa nào được sử dụng để định nghĩa một hàm trong Python?

10 / 30

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

Tags: Bộ đề 1

10. Đoạn code Python sau in ra kết quả gì:
`a = [1, 2, 3]
b = a
b[0] = 5
print(a)`

11 / 30

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

Tags: Bộ đề 1

11. Đoạn code Python sau in ra gì:
`def func(x):
return x * 2
print(func('3'))`

12 / 30

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

Tags: Bộ đề 1

12. Mục đích của `if __name__ == '__main__':` trong Python script là gì?

13 / 30

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

Tags: Bộ đề 1

13. Cho đoạn code:
`x = 5
def change_x():
x = 10
change_x()
print(x)`
Giá trị in ra của `x` là:

14 / 30

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

Tags: Bộ đề 1

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

15 / 30

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

Tags: Bộ đề 1

15. Module `os` trong Python thường được sử dụng để làm gì?

16 / 30

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

Tags: Bộ đề 1

16. Kết quả của đoạn code Python sau là gì:
`print(3 > 2 > 1)`

17 / 30

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

Tags: Bộ đề 1

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

18 / 30

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

Tags: Bộ đề 1

18. Giá trị trả về của hàm `len()` khi truyền vào một dictionary là gì?

19 / 30

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

Tags: Bộ đề 1

19. Trong Python, exception handling (xử lý ngoại lệ) được thực hiện bằng các khối lệnh nào?

20 / 30

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

Tags: Bộ đề 1

20. Toán tử `%` trong Python dùng để làm gì?

21 / 30

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

Tags: Bộ đề 1

21. Hàm `range(start, stop, step)` tạo ra dãy số như thế nào?

22 / 30

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

Tags: Bộ đề 1

22. Phương thức `super()` được sử dụng trong lập trình hướng đối tượng Python để làm gì?

23 / 30

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

Tags: Bộ đề 1

23. Hàm nào sau đây KHÔNG phải là hàm built-in (tích hợp sẵn) trong Python?

24 / 30

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

Tags: Bộ đề 1

24. Kiểu dữ liệu nào sau đây thường được sử dụng để lưu trữ các cặp key-value trong Python?

25 / 30

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

Tags: Bộ đề 1

25. Phương thức `strip()` được sử dụng để làm gì với string trong Python?

26 / 30

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

Tags: Bộ đề 1

26. Đâu là kiểu dữ liệu KHÔNG THỂ THAY ĐỔI (immutable) trong Python?

27 / 30

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

Tags: Bộ đề 1

27. 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?

28 / 30

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

Tags: Bộ đề 1

28. Generator trong Python mang lại lợi ích chính nào về mặt hiệu suất so với list thông thường khi làm việc với lượng dữ liệu lớn?

29 / 30

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

Tags: Bộ đề 1

29. Phương thức `split()` của string 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ộ đề 1

30. Khi nào nên sử dụng list comprehension thay vì vòng lặp `for` truyền thống để tạo list trong Python?