Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình Python - Đề 09 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.
Câu 1: Cho đoạn mã Python sau:
def calculate_sum(a, b):
return a + b
x = 5
y = 10
z = calculate_sum(x, y)
print(z)
Giá trị nào sẽ được in ra màn hình khi đoạn mã này được thực thi?
- A. x + y
- B. calculate_sum(x, y)
- C. 15
- D. 510
Câu 2: Kiểu dữ liệu nào sau đây là không thể thay đổi (immutable) trong Python?
- A. list
- B. tuple
- C. dictionary
- D. set
Câu 3: Xét biểu thức logic sau trong Python: `(True and False) or (True or False)`. Giá trị của biểu thức này là gì?
- A. Không xác định
- B. None
- C. False
- D. True
Câu 4: Trong Python, vòng lặp `for` thường được sử dụng để lặp qua các phần tử của một chuỗi (sequence). Chuỗi nào sau đây không phải là một sequence hợp lệ mà vòng lặp `for` có thể duyệt qua trực tiếp?
- A. string
- B. list
- C. integer
- D. tuple
Câu 5: Hàm `len()` trong Python được sử dụng để làm gì?
- A. Tính tổng các phần tử trong một list số.
- B. Trả về độ dài (số phần tử) của một chuỗi hoặc sequence.
- C. Kiểm tra xem một phần tử có tồn tại trong sequence hay không.
- D. Chuyển đổi một đối tượng sang kiểu dữ liệu số nguyên.
Câu 6: Chọn phát biểu đúng về phạm vi (scope) của biến trong Python.
- A. Biến được khai báo bên trong một hàm chỉ có phạm vi cục bộ, chỉ có thể truy cập bên trong hàm đó.
- B. Biến toàn cục (global) chỉ có thể được khai báo ở đầu chương trình và không thể truy cập bên trong hàm.
- C. Python không phân biệt biến cục bộ và biến toàn cục; tất cả các biến đều có phạm vi toàn cục.
- D. Phạm vi của biến luôn được xác định bởi dòng lệnh đầu tiên mà biến đó được sử dụng.
Câu 7: Để viết một chú thích (comment) một dòng trong Python, bạn sử dụng ký tự nào?
- A. //
- B. /* ... */
- C. "
- D. #
Câu 8: Phương thức `.append()` được sử dụng để làm gì đối với list trong Python?
- A. Xóa một phần tử khỏi list.
- B. Thêm một phần tử vào cuối list.
- C. Chèn một phần tử vào vị trí bất kỳ trong list.
- D. Đảo ngược thứ tự các phần tử trong list.
Câu 9: Đoạn mã Python sau sẽ in ra kết quả gì?
numbers = [1, 2, 3, 4, 5]
print(numbers[1:3])
- A. [1, 2, 3]
- B. [2, 3, 4]
- C. [2, 3]
- D. [1, 3]
Câu 10: Trong Python, hàm `input()` luôn trả về giá trị có kiểu dữ liệu gì?
- A. string
- B. integer
- C. float
- D. boolean
Câu 11: Để kiểm tra xem một khóa (key) có tồn tại trong một dictionary hay không, cách hiệu quả nhất trong Python là gì?
- A. Duyệt qua tất cả các khóa của dictionary và so sánh.
- B. Sử dụng toán tử `in` để kiểm tra trực tiếp khóa trong dictionary.
- C. Sử dụng phương thức `.get()` và kiểm tra giá trị trả về có phải là `None` hay không.
- D. Thử truy cập khóa và bắt lỗi `KeyError` nếu khóa không tồn tại.
Câu 12: Hàm nào sau đây được sử dụng để mở một file để đọc trong Python?
- A. read_file()
- B. file.open()
- C. open()
- D. load_file()
Câu 13: Trong Python, exception `TypeError` thường xảy ra khi nào?
- A. Khi cố gắng truy cập một biến chưa được định nghĩa.
- B. Khi chia một số cho 0.
- C. Khi file được chỉ định không tồn tại.
- D. Khi thực hiện một phép toán không hợp lệ trên kiểu dữ liệu (ví dụ: cộng một số với một chuỗi).
Câu 14: Cấu trúc điều khiển `if-elif-else` trong Python được sử dụng để làm gì?
- A. Lặp lại một khối lệnh nhiều lần cho đến khi một điều kiện sai.
- B. Thực hiện các khối lệnh khác nhau tùy thuộc vào nhiều điều kiện khác nhau.
- C. Định nghĩa một hàm để tái sử dụng mã.
- D. Xử lý lỗi và tiếp tục thực thi chương trình.
Câu 15: Hàm `range(start, stop, step)` tạo ra một sequence số. Trong đó, tham số `stop` có ý nghĩa gì?
- A. Số lượng phần tử được tạo ra trong sequence.
- B. Giá trị cuối cùng bao gồm trong sequence.
- C. Giá trị cuối cùng không bao gồm trong sequence; sequence dừng lại trước giá trị này.
- D. Bước nhảy giữa các số trong sequence.
Câu 16: Toán tử `%` trong Python được gọi là toán tử gì và nó thực hiện phép toán nào?
- A. Toán tử phần trăm; tính tỷ lệ phần trăm.
- B. Toán tử lũy thừa; tính lũy thừa.
- C. Toán tử chia lấy phần nguyên; thực hiện phép chia và lấy phần nguyên.
- D. Toán tử modulo; trả về phần dư của phép chia.
Câu 17: Hàm `print()` trong Python có tham số `end` để làm gì?
- A. Xác định ký tự hoặc chuỗi được in ra ở cuối mỗi lệnh `print()` (mặc định là newline).
- B. Xác định số lượng khoảng trắng thụt lề trước mỗi dòng in ra.
- C. Bật/tắt chế độ in ra lỗi nếu có.
- D. Chọn encoding cho đầu ra in ra.
Câu 18: Để chuyển đổi một chuỗi (string) thành số nguyên (integer) trong Python, bạn sử dụng hàm nào?
- A. str()
- B. int()
- C. float()
- D. bool()
Câu 19: Trong Python, kiểu dữ liệu `set` có đặc điểm nổi bật nào?
- A. Các phần tử trong set được sắp xếp theo thứ tự.
- B. Set cho phép chứa các phần tử trùng lặp.
- C. Set chứa các phần tử duy nhất và không có thứ tự.
- D. Set là kiểu dữ liệu immutable, không thể thay đổi sau khi tạo.
Câu 20: Cho đoạn mã Python:
x = 10
y = 5
if x > y:
print(
- A. x lớn hơn y
- B. x nhỏ hơn y
- C. x bằng y
- D. Không in ra gì
Câu 21: Để tạo một bản sao nông (shallow copy) của một list trong Python, cách nào sau đây là phù hợp nhất?
- A. Gán trực tiếp: `new_list = old_list`
- B. Sử dụng vòng lặp để sao chép từng phần tử.
- C. Sử dụng module `copy.deepcopy()`
- D. Sử dụng phương thức `.copy()` hoặc slicing `[:]`.
Câu 22: Trong Python, hàm `sorted()` và phương thức `.sort()` khác nhau như thế nào?
- A. `sorted()` sắp xếp list tại chỗ, còn `.sort()` trả về một list mới đã sắp xếp.
- B. `sorted()` trả về một list mới đã sắp xếp, còn `.sort()` sắp xếp list tại chỗ (in-place).
- C. `sorted()` chỉ sắp xếp được số, còn `.sort()` sắp xếp được cả chuỗi và số.
- D. `sorted()` nhanh hơn `.sort()` khi sắp xếp list lớn.
Câu 23: Module `math` trong Python cung cấp những hàm gì?
- A. Các hàm liên quan đến xử lý chuỗi.
- B. Các hàm liên quan đến thao tác file.
- C. Các hàm toán học (ví dụ: sin, cos, sqrt, log).
- D. Các hàm liên quan đến xử lý thời gian và ngày tháng.
Câu 24: Để định nghĩa một hàm trong Python, bạn sử dụng từ khóa nào?
- A. def
- B. function
- C. func
- D. define
Câu 25: Trong Python, bạn có thể sử dụng dấu ngoặc nào để tạo một tuple?
Câu 26: Phương thức `.get(key, default)` của dictionary hoạt động như thế nào nếu `key` không tồn tại trong dictionary?
- A. Gây ra lỗi `KeyError`.
- B. Trả về giá trị `True`.
- C. Trả về một dictionary rỗng.
- D. Trả về giá trị `default` được chỉ định (nếu có), hoặc `None` nếu không có `default`.
Câu 27: Vòng lặp `while` trong Python sẽ tiếp tục thực hiện khối lệnh bên trong cho đến khi nào?
- A. Cho đến khi số lần lặp đạt một giá trị xác định.
- B. Cho đến khi gặp lệnh `break`.
- C. Cho đến khi điều kiện kiểm tra trở thành `False`.
- D. Chỉ lặp lại một lần duy nhất.
Câu 28: Để kiểm tra kiểu dữ liệu của một biến trong Python, bạn sử dụng hàm nào?
- A. is_type()
- B. type()
- C. check_type()
- D. data_type()
Câu 29: Trong Python, bạn có thể sử dụng toán tử nào để kết hợp hai chuỗi (string concatenation)?
Câu 30: Hàm `open("file.txt", "w")` sẽ thực hiện thao tác gì trên file "file.txt"?
- A. Mở file "file.txt" để đọc nội dung.
- B. Mở file "file.txt" để thêm nội dung vào cuối file.
- C. Mở file "file.txt" để viết nội dung, nếu file đã tồn tại sẽ bị ghi đè, nếu không tồn tại sẽ tạo mới.
- D. Đổi tên file "file.txt".