Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Lập Trình Python - Đề 10 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: Đoạn mã Python sau sẽ in ra kết quả gì?
```python
x = [1, 2, 3, 4, 5]
y = x
y[0] = 10
print(x[0])
```
- A. 10
- B. 1
- C. Lỗi vì không thể thay đổi phần tử của list
- D. 5
Câu 2: Cho đoạn mã Python:
```python
def calculate(a, b):
return a + b, a - b
result = calculate(5, 3)
```
Biến `result` sẽ có kiểu dữ liệu nào?
- A. list
- B. set
- C. tuple
- D. dictionary
Câu 3: Trong Python, phương thức `append()` và `extend()` khác nhau như thế nào khi sử dụng với list?
- A. `append()` thêm nhiều phần tử cùng lúc, `extend()` chỉ thêm một.
- B. `append()` thêm một phần tử vào list, `extend()` thêm các phần tử của một iterable vào list.
- C. `append()` chỉ dùng cho số, `extend()` dùng cho mọi kiểu dữ liệu.
- D. `append()` tạo list mới, `extend()` sửa đổi list hiện tại.
Câu 4: Cho đoạn mã Python:
```python
numbers = [1, 2, 3, 4]
squares = [n**2 for n in numbers if n % 2 == 0]
print(squares)
```
Đoạn mã này in ra kết quả gì?
- A. [1, 4]
- B. [4, 16]
- C. [1, 2, 3, 4]
- D. [4, 16]
Câu 5: Trong Python, kiểu dữ liệu dictionary được sử dụng để lưu trữ dữ liệu dạng nào?
- A. Dãy số tuần tự
- B. Cặp key-value
- C. Tập hợp các phần tử duy nhất
- D. Chuỗi ký tự
Câu 6: Hàm `open()` trong Python được sử dụng để làm gì?
- A. Mở một file để đọc hoặc ghi
- B. Đóng một file đã mở
- C. Đọc nội dung từ một file
- D. Ghi nội dung vào một file
Câu 7: Trong Python, exception handling (xử lý ngoại lệ) được thực hiện bằng cấu trúc nào?
- A. if-else
- B. for-loop
- C. try-except
- D. while-loop
Câu 8: Module `math` trong Python cung cấp những chức năng gì?
- A. Xử lý chuỗi
- B. Thao tác file
- C. Mạng máy tính
- D. Các hàm toán học
Câu 9: Trong lập trình hướng đối tượng Python, "class" là gì?
- A. Một đối tượng cụ thể
- B. Khuôn mẫu để tạo đối tượng
- C. Một biến toàn cục
- D. Một hàm đặc biệt
Câu 10: Phương thức `__init__` trong một class Python có vai trò gì?
- A. Khởi tạo đối tượng
- B. Hủy đối tượng
- C. Gọi một phương thức khác
- D. In thông tin đối tượng
Câu 11: Cho đoạn mã Python:
```python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
print(factorial(4))
```
Đoạn mã này tính giá trị nào?
Câu 12: Trong Python, vòng lặp `for` thường được sử dụng để làm gì?
- A. Lặp vô hạn
- B. Lặp qua các phần tử của một iterable
- C. Lặp khi một điều kiện sai
- D. Thực hiện một lần duy nhất
Câu 13: Sự khác biệt chính giữa vòng lặp `while` và `for` trong Python là gì?
- A. `while` nhanh hơn `for`
- B. `for` linh hoạt hơn `while`
- C. `while` chỉ dùng cho số, `for` cho chuỗi.
- D. `for` lặp trên iterable, `while` lặp theo điều kiện.
Câu 14: Cho đoạn mã Python:
```python
text =
- A. World
- B. Hello
- C. World!
- D. o, Wo
Câu 15: Để kiểm tra xem một key có tồn tại trong dictionary Python hay không, cách nào hiệu quả nhất?
- A. Dùng vòng lặp for duyệt qua tất cả các key.
- B. Sử dụng hàm `dictionary.keys()` và tìm kiếm trong list key trả về.
- C. Sử dụng toán tử `in` để kiểm tra trực tiếp.
- D. Gọi hàm `dictionary.get(key)` và kiểm tra giá trị trả về.
Câu 16: Hàm `lambda` trong Python là gì?
- A. Hàm đệ quy
- B. Hàm tạo decorator
- C. Hàm xử lý ngoại lệ
- D. Hàm ẩn danh, định nghĩa ngắn gọn
Câu 17: Cho đoạn mã Python:
```python
def apply_operation(func, x, y):
return func(x, y)
def add(a, b):
return a + b
result = apply_operation(add, 5, 2)
print(result)
```
Kết quả in ra là gì?
Câu 18: Trong Python, "decorator" được sử dụng để làm gì?
- A. Tạo đối tượng class
- B. Xử lý lỗi
- C. Mở rộng chức năng của hàm/class
- D. Tối ưu hóa tốc độ code
Câu 19: Kiểu dữ liệu "set" trong Python có đặc điểm nổi bật gì?
- A. Các phần tử có thứ tự và có thể trùng lặp
- B. Các phần tử duy nhất và không có thứ tự
- C. Chỉ chứa số nguyên
- D. Chỉ chứa chuỗi
Câu 20: Để cài đặt một package Python từ PyPI (Python Package Index), bạn sử dụng lệnh nào?
- A. pip install
- B. python install
- C. package install
- D. install package
Câu 21: Cho đoạn mã Python:
```python
x = 5
def change_x():
global x
x = 10
change_x()
print(x)
```
Kết quả in ra là gì?
- A. 10
- B. 5
- C. Lỗi vì không thể thay đổi biến toàn cục
- D. Không có gì được in ra
Câu 22: 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 đối số
- B. Truyền số lượng biến đối số không xác định
- C. Định nghĩa giá trị mặc định cho đối số
- D. Truyền đối số là hàm
Câu 23: Phương thức `strip()` trong Python dùng để làm gì với chuỗi?
- A. Viết hoa toàn bộ chuỗi
- B. Chuyển chuỗi thành chữ thường
- C. Đếm số ký tự trong chuỗi
- D. Loại bỏ khoảng trắng đầu và cuối chuỗi
Câu 24: Cho đoạn mã Python:
```python
import datetime
today = datetime.date.today()
print(today.strftime(
- A. YYYY-MM-DD
- B. MM/DD/YYYY
- C. DD/MM/YYYY
- D. Ngày tháng dạng số Julian
Câu 25: Trong Python, "generator" là gì và nó khác gì so với list?
- A. Generator lưu trữ tất cả giá trị cùng lúc trong bộ nhớ.
- B. Generator tạo giá trị từng bước một, tiết kiệm bộ nhớ hơn list.
- C. Generator chỉ dùng cho số, list cho mọi kiểu dữ liệu.
- D. Generator nhanh hơn list trong mọi trường hợp.
Câu 26: Để đọc toàn bộ nội dung của một file văn bản trong Python, cách nào hiệu quả nhất?
- A. Dùng vòng lặp for duyệt qua từng dòng.
- B. Sử dụng hàm `readlines()` để đọc tất cả các dòng vào một list.
- C. Gọi hàm `readline()` nhiều lần cho đến khi hết file.
- D. Sử dụng phương thức `read()` để đọc toàn bộ nội dung.
Câu 27: Trong Python, "magic methods" (phương thức ma thuật) là gì?
- A. Phương thức được gọi khi có lỗi xảy ra.
- B. Phương thức chỉ dùng cho module math.
- C. Phương thức đặc biệt, tên bắt đầu và kết thúc bằng dấu gạch dưới đôi.
- D. Phương thức để tạo decorator.
Câu 28: Cho đoạn mã Python:
```python
def process_list(data):
try:
return [x / 2 for x in data]
except TypeError:
return
- A. [1.0, 2.0, "a/2", 3.0]
- B.
- C. [1.0, 2.0, Exception, 3.0]
- D. Lỗi chương trình
Câu 29: Trong Python, mục đích của việc sử dụng virtual environment (môi trường ảo) là gì?
- A. Tạo môi trường cô lập cho từng dự án, quản lý dependencies.
- B. Tăng tốc độ thực thi chương trình Python.
- C. Biên dịch code Python sang ngôn ngữ máy.
- D. Chạy code Python trên trình duyệt web.
Câu 30: Để sắp xếp một list các đối tượng phức tạp theo một thuộc tính cụ thể trong Python, bạn có thể sử dụng hàm nào?
- A. Hàm `sort()` (chỉ dùng cho list số)
- B. Hàm `order()`
- C. Hàm `sorted()` với tham số `key`
- D. Không thể sắp xếp list đối tượng phức tạp