Trắc nghiệm Tin học 10 Kết nối tri thức Bài 22: Kiểu dữ liệu danh sách - Đề 01 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: Trong Python, kiểu dữ liệu danh sách (list) có đặc điểm nào sau đây?
- A. Không thể thay đổi (immutable) sau khi được tạo.
- B. Có thứ tự và các phần tử có thể có kiểu dữ liệu khác nhau.
- C. Chỉ có thể chứa các phần tử cùng một kiểu dữ liệu.
- D. Không duy trì thứ tự của các phần tử.
Câu 2: Cho đoạn code Python sau:
`danh_sach = [1, "hai", 3.0, True]`
Kiểu dữ liệu của phần tử có chỉ số 1 trong danh sách này là gì?
- A. int
- B. float
- C. str
- D. bool
Câu 3: Để tạo một danh sách rỗng trong Python, cú pháp nào sau đây là đúng nhất?
- A. my_list = {}
- B. my_list = ()
- C. my_list = [] or my_list = list()
- D. my_list = [] hoặc my_list = list()
Câu 4: Cho danh sách `diem_so = [85, 92, 78, 95, 88]`. Để truy cập và in ra điểm số thứ ba trong danh sách (điểm 78), ta sử dụng cú pháp nào?
- A. print(diem_so[2])
- B. print(diem_so[3])
- C. print(diem_so[78])
- D. print(diem_so.get(2))
Câu 5: Cho danh sách `chuoi_so = ["1", "2", "3", "4", "5"]`. Đoạn code nào sau đây sẽ tạo ra một danh sách mới chứa các số nguyên tương ứng?
- A. so_nguyen = [str(x) for x in chuoi_so]
- B. so_nguyen = [int(x) for x in chuoi_so]
- C. so_nguyen = list(chuoi_so)
- D. so_nguyen = chuoi_so.to_int()
Câu 6: Cho danh sách `colors = ["red", "green", "blue"]`. Sau khi thực hiện lệnh `colors.append("yellow")`, danh sách `colors` sẽ trở thành?
- A. ["yellow", "red", "green", "blue"]
- B. ["red", "green", "blue", ["yellow"]]
- C. ["red", "green", "blue"]
- D. ["red", "green", "blue", "yellow"]
Câu 7: Cho danh sách `numbers = [10, 20, 30, 40, 50]`. Lệnh nào sau đây sẽ xóa phần tử có giá trị 30 khỏi danh sách?
- A. numbers.pop(30)
- B. del numbers[30]
- C. numbers.remove(30)
- D. numbers.delete(30)
Câu 8: Cho danh sách `letters = ["a", "b", "c", "d", "e"]`. Lệnh `del letters[1:4]` sẽ làm cho danh sách `letters` trở thành?
- A. ["a", "e"]
- B. ["a", "b", "c", "d", "e"]
- C. ["b", "c", "d"]
- D. ["a", "b", "e"]
Câu 9: Cho hai danh sách `list1 = [1, 2]` và `list2 = [3, 4]`. Kết quả của phép toán `list1 + list2` là gì?
- A. [1, 2, [3, 4]]
- B. [1, 2, 3, 4]
- C. Error
- D. list1list2
Câu 10: Cho danh sách `data = [1, 2, 3]`. Kết quả của phép toán `data * 3` là gì?
- A. [3, 6, 9]
- B. [1, 2, 3, 1, 2, 3]
- C. [1, 2, 3, 1, 2, 3, 1, 2, 3]
- D. Error
Câu 11: Cho danh sách `items = ["apple", "banana", "orange"]`. Biểu thức nào sau đây sẽ trả về `True`?
- A. "banana" in items
- B. "grape" not in items
- C. "APPLE" in items
- D. items == ["apple", "banana", "orange", "grape"]
Câu 12: Cho danh sách `scores = [75, 88, 92, 65, 78]`. Hàm `len(scores)` sẽ trả về giá trị nào?
- A. 65
- B. 5
- C. 92
- D. Error
Câu 13: Cho danh sách `numbers = [10, 5, 20, 15]`. Kết quả của `max(numbers)` và `min(numbers)` lần lượt là gì?
- A. 10 và 20
- B. 20 và 10
- C. 10 và 5
- D. 20 và 5
Câu 14: Cho danh sách `values = [1, 2, 3, 4, 5]`. Đoạn code nào sau đây sẽ in ra từng phần tử của danh sách trên một dòng riêng biệt?
- A. for item in values:
print(item)
- B. print(values)
- C. for i in range(len(values)):
print(values[i], end=" ")
- D. print(values[0], values[1], values[2], values[3], values[4])
Câu 15: Cho danh sách `data = [10, 20, 10, 30, 10, 40]`. Phương thức `data.count(10)` sẽ trả về giá trị nào?
Câu 16: Cho danh sách `alphabets = ["b", "a", "d", "c"]`. Sau khi thực hiện lệnh `alphabets.sort()`, danh sách `alphabets` sẽ trở thành?
- A. ["b", "a", "d", "c"]
- B. ["c", "d", "a", "b"]
- C. ["a", "b", "c", "d"]
- D. None
Câu 17: Cho danh sách `digits = [1, 2, 3, 4, 5]`. Sau khi thực hiện lệnh `digits.reverse()`, danh sách `digits` sẽ trở thành?
- A. [1, 2, 3, 4, 5]
- B. [5, 4, 3, 2, 1]
- C. Error
- D. [5, 4, 3, 2, 1]
Câu 18: Cho danh sách `mix = [10, "hello", 20, "world"]`. Lệnh `mix.insert(1, "python")` sẽ làm cho danh sách `mix` trở thành?
- A. [10, 20, "hello", "world", "python"]
- B. [10, "python", "hello", 20, "world"]
- C. [10, "hello", "python", 20, "world"]
- D. [10, "hello", 20, "world", "python"]
Câu 19: Cho danh sách `nums = [1, 2, 3, 4, 5]`. Lệnh `nums[2] = 10` sẽ làm cho danh sách `nums` trở thành?
- A. [1, 2, 3, 4, 5, 10]
- B. [1, 2, 4, 5, 10]
- C. [1, 2, 10, 4, 5]
- D. [10, 2, 3, 4, 5]
Câu 20: Cho danh sách `my_list = [1, 2, 3]`. Lệnh `my_list.clear()` sẽ làm cho danh sách `my_list` trở thành?
- A. []
- B. [None, None, None]
- C. Error
- D. Danh sách không thay đổi
Câu 21: Cho danh sách `original = [1, 2, 3]`. Lệnh `copied = original.copy()` sẽ tạo ra một bản sao độc lập của danh sách. Điều này có nghĩa là gì?
- A. `copied` là một tham chiếu đến `original`, thay đổi `copied` cũng thay đổi `original`.
- B. `copied` chứa các giá trị giống `original`, nhưng thay đổi `original` cũng thay đổi `copied`.
- C. `copied` và `original` là cùng một đối tượng trong bộ nhớ.
- D. `copied` là một đối tượng danh sách mới, thay đổi `copied` không ảnh hưởng đến `original`.
Câu 22: Cho danh sách `data = [10, 20, 30, 40, 50]`. Kết quả của việc truy cập slicing `data[1:4]` là gì?
- A. [10, 20, 30]
- B. [20, 30, 40, 50]
- C. [20, 30, 40]
- D. [10, 20, 30, 40]
Câu 23: Cho danh sách `numbers = [1, 2, 3, 4, 5]`. Đoạn code sau:
`total = 0
for num in numbers:
total += num`
Sau khi chạy xong, biến `total` sẽ có giá trị là bao nhiêu?
Câu 24: Giả sử bạn có một danh sách `students = ["An", "Binh", "Hoa", "Lan"]`. Bạn muốn thêm tên "Cuong" vào vị trí thứ 2 (sau "An"), bạn sẽ dùng lệnh nào?
- A. students.insert(1, "Cuong")
- B. students.append("Cuong")
- C. students[1] = "Cuong"
- D. students.add(1, "Cuong")
Câu 25: Cho danh sách `data = [5, 2, 8, 1, 9]`. Để sắp xếp danh sách này theo thứ tự tăng dần và lưu kết quả vào một danh sách mới mà không thay đổi danh sách gốc, ta sử dụng hàm nào?
- A. data.sort()
- B. sorted(data, reverse=True)
- C. sorted(data)
- D. data.sorted()
Câu 26: Cho danh sách `numbers = [10, 20, 30, 40, 50]`. Lệnh `numbers.pop(2)` sẽ trả về giá trị nào và danh sách `numbers` sẽ thay đổi như thế nào?
- A. Trả về 20, danh sách trở thành `[10, 30, 40, 50]`
- B. Trả về 30, danh sách trở thành `[10, 20, 40, 50]`
- C. Trả về 2, danh sách trở thành `[10, 20, 40, 50]`
- D. Trả về 30, danh sách trở thành `[10, 20, 40, 50]`
Câu 27: Cho danh sách `my_list = [1, [2, 3], 4]`. Kiểu dữ liệu của phần tử có chỉ số 1 là gì?
- A. int
- B. list
- C. tuple
- D. Error
Câu 28: Giả sử bạn cần lưu trữ danh sách các môn học của một lớp. Danh sách này có thể thay đổi (thêm/bớt môn). Kiểu dữ liệu danh sách (list) trong Python có phù hợp để lưu trữ thông tin này không? Vì sao?
- A. Có, vì list là mutable (có thể thay đổi) và có thứ tự.
- B. Không, vì list chỉ lưu trữ được số.
- C. Có, nhưng chỉ khi tất cả các môn học đều có cùng độ dài tên.
- D. Không, vì list không hỗ trợ việc thêm/bớt phần tử.
Câu 29: Cho đoạn code:
`numbers = [1, 2, 3]
new_numbers = numbers
new_numbers.append(4)
print(numbers)`
Kết quả in ra màn hình sẽ là gì?
- A. [1, 2, 3]
- B. [1, 2, 3, 4]
- C. [1, 2, 3, 4]
- D. Error
Câu 30: Cho danh sách `my_list = [10, 20, 30, 40, 50]`. Đoạn code nào sau đây sẽ in ra các phần tử có chỉ số chẵn (0, 2, 4)?
- A. for i in range(len(my_list)):
if i % 2 != 0:
print(my_list[i])
- B. for i in range(0, len(my_list), 2):
print(my_list[i])
- C. for item in my_list:
print(item)
- D. print(my_list[::2])