1. Nếu bạn muốn sử dụng các hàm xử lý tệp tin như `open`, `read`, `write`, bạn thường không cần import một thư viện cụ thể vì chúng là gì?
A. Hàm được định nghĩa trong một thư viện bên thứ ba.
B. Hàm có sẵn (built-in functions) của Python.
C. Hàm cần được biên dịch trước khi sử dụng.
D. Hàm chỉ có thể gọi từ giao diện dòng lệnh.
2. Khi một module được nhập vào chương trình, các mã trong module đó có được thực thi ngay lập tức không?
A. Có, tất cả mã trong module luôn được thực thi.
B. Không, chỉ những mã được gọi tường minh mới thực thi.
C. Chỉ các biến được thực thi.
D. Chỉ các hàm có thể gọi được thực thi.
3. Câu lệnh `import json` trong Python được sử dụng để làm gì?
A. Thực hiện các phép toán phức tạp trên chuỗi.
B. Làm việc với định dạng dữ liệu JSON (JavaScript Object Notation).
C. Truy cập các biến môi trường.
D. Gửi yêu cầu HTTP.
4. Để làm việc với hệ điều hành và các chức năng của nó trong Python, bạn thường sử dụng thư viện nào?
A. sys
B. os
C. random
D. re
5. Trong Python, làm thế nào để kiểm tra xem một module đã được nhập vào chương trình hay chưa?
A. Sử dụng câu lệnh `check module `.
B. Sử dụng biến hệ thống `sys.modules` và kiểm tra sự tồn tại của tên module trong đó.
C. Sử dụng hàm `is_imported()`.
D. Không có cách nào để kiểm tra trực tiếp.
6. Nếu bạn đã chạy lệnh `import math`, làm thế nào để gọi hàm tính giá trị tuyệt đối của `-5`?
A. print(abs(-5))
B. print(math.abs(-5))
C. print(absolute(-5))
D. print(math.absolute(-5))
7. Khi muốn sử dụng một chức năng từ thư viện `math` trong Python, câu lệnh nào là đúng?
A. import math
print(math.sqrt(16))
B. load math
print(sqrt(16))
C. include math
print(math.sqrt(16))
D. use math
print(sqrt(16))
8. Nếu bạn muốn sử dụng thư viện xử lý dữ liệu `pandas`, câu lệnh import nào là phổ biến nhất?
A. import pandas
B. from pandas import pd
C. import pandas as pd
D. load pandas as pd
9. Để tạo một hàm mới trong module của riêng bạn, bạn sẽ viết nó vào đâu?
A. Trong tệp chính của chương trình.
B. Trong một tệp Python (.py) mới, định nghĩa hàm đó bên trong.
C. Trong một tệp văn bản thông thường.
D. Trong một tệp thực thi (.exe).
10. Phát biểu nào sau đây mô tả đúng về module trong Python?
A. Module là một chương trình độc lập, có thể chạy riêng biệt.
B. Module là một tệp Python (.py) chứa các định nghĩa và câu lệnh Python.
C. Module chỉ có thể chứa các biến, không chứa hàm.
D. Module là một cấu trúc dữ liệu dùng để lưu trữ thông tin.
11. Để tránh xung đột tên khi import nhiều module có cùng tên hàm, cách tiếp cận tốt nhất là gì?
A. Sử dụng `import *` cho tất cả các module.
B. Chỉ import một module duy nhất.
C. Sử dụng bí danh (alias) cho các module hoặc import các hàm cụ thể với tên khác.
D. Đổi tên các hàm trong module.
12. Nếu bạn muốn sử dụng các thuật toán máy học từ thư viện `scikit-learn` (sklearn), bạn thường import như thế nào?
A. import sklearn
B. from sklearn import all
C. import sklearn as sk
D. import sklearn.neural_network
13. Khi một chương trình Python cần thực hiện các thao tác liên quan đến ngày giờ, nó thường sẽ sử dụng thư viện nào?
A. math
B. os
C. datetime
D. sys
14. Thư viện nào trong Python thường được sử dụng để tạo biểu đồ và trực quan hóa dữ liệu?
A. numpy
B. scipy
C. matplotlib
D. sklearn
15. Lệnh `import numpy as np` thường được sử dụng trong Python với mục đích gì?
A. Để nhập toàn bộ thư viện `numpy` và đặt tên bí danh là `np` cho nó.
B. Để chỉ nhập một vài hàm cụ thể từ thư viện `numpy`.
C. Để định nghĩa lại thư viện `numpy`.
D. Để xuất bản thư viện `numpy`.
16. Phát biểu nào sau đây mô tả đúng nhất về package trong Python?
A. Một tệp Python duy nhất chứa tất cả mã nguồn.
B. Một thư mục chứa các module Python và một tệp `__init__.py` đặc biệt.
C. Một chương trình có thể thực thi trực tiếp.
D. Một cách để định nghĩa lớp mới.
17. Trong Python, khi sử dụng cú pháp `from module import *`, điều gì sẽ xảy ra?
A. Chỉ các biến từ module được nhập.
B. Tất cả các tên (hàm, lớp, biến) không được bắt đầu bằng dấu gạch dưới (`_`) từ module đó sẽ được nhập vào không gian tên hiện tại.
C. Chỉ các hàm được nhập.
D. Lệnh này sẽ gây ra lỗi cú pháp.
18. Phát biểu nào sau đây mô tả đúng về vai trò của tệp `__init__.py` trong một package Python?
A. Tệp này chứa mã chính của package.
B. Tệp này dùng để khai báo package là một thư mục có thể nhập được.
C. Tệp này chỉ có thể chứa các biến toàn cục.
D. Tệp này không có vai trò gì trong package.
19. Lệnh `from math import sqrt` trong Python có ý nghĩa gì?
A. Nhập toàn bộ thư viện `math` vào chương trình.
B. Chỉ nhập hàm `sqrt` từ thư viện `math` vào không gian tên hiện tại.
C. Nhập tất cả các hàm từ thư viện `math` nhưng không cần tiền tố `math.`.
D. Định nghĩa lại hàm `sqrt` trong thư viện `math`.
20. Khi bạn muốn sử dụng một hàm `randint` để sinh số nguyên ngẫu nhiên từ thư viện `random`, bạn nên dùng lệnh `import` nào để gọi trực tiếp hàm này?
A. import random
print(random.randint(1, 10))
B. from random import randint
print(randint(1, 10))
C. import random
print(randint(1, 10))
D. load random
print(random.randint(1, 10))
21. Tại sao việc chia mã nguồn thành các module và package lại quan trọng trong phát triển phần mềm lớn?
A. Để làm cho chương trình chạy chậm hơn.
B. Để tăng khả năng tái sử dụng mã, dễ quản lý, bảo trì và cộng tác phát triển.
C. Để chỉ một người có thể hiểu toàn bộ mã.
D. Để giảm dung lượng tệp thực thi.
22. Một thư viện Python có thể chứa những thành phần nào?
A. Chỉ các hàm.
B. Chỉ các lớp.
C. Các hàm, lớp, biến và các module con khác.
D. Chỉ các câu lệnh điều kiện.
23. Trong lập trình Python, phát biểu nào sau đây mô tả đúng nhất về khái niệm thư viện (library)?
A. Một bộ sưu tập các chương trình độc lập có thể chạy được.
B. Một tệp chứa các đoạn mã có thể tái sử dụng, cung cấp các chức năng đã được định nghĩa sẵn.
C. Một công cụ để biên dịch mã nguồn thành mã máy.
D. Một môi trường để gỡ lỗi (debug) các chương trình.
24. Khi bạn muốn sử dụng một thư viện đã cài đặt nhưng không rõ tên chính xác của hàm cần dùng, bạn có thể làm gì để khám phá các chức năng của nó?
A. Tìm kiếm trên Google.
B. Sử dụng hàm `dir()` trên đối tượng thư viện hoặc `help()` để xem tài liệu.
C. Đọc mã nguồn của thư viện.
D. Nhập tất cả mọi thứ bằng `import *`.
25. Lệnh `pip install ` được sử dụng để làm gì trong Python?
A. Xóa bỏ một thư viện đã cài đặt.
B. Cài đặt hoặc cập nhật một thư viện từ kho lưu trữ PyPI.
C. Kiểm tra phiên bản của một thư viện.
D. Tạo một thư viện mới.