Python: Tập tin, hàm, module và các thư viện
Exam info
- Subject
- Nhập môn lập trình Python
- Exam type
- University
- Questions
- 70
- Duration
- 70 min
- Answers
- ✓ With explanations
Questions (70)
- Q 1.
Theo nội dung, đặc điểm nào phù hợp nhất với một tập tin văn bản trong Python?
- A.
Nội dung được tổ chức thành các dòng, có thể chứa ký tự xuống dòng và dòng trống.
- B.
Chỉ được Python xem là một dãy byte và luôn được xử lý theo từng khối.
- C.
Chỉ dùng để lưu danh sách thư mục của hệ điều hành.
- D.
Không được chứa dòng trống và không có ký tự phân tách dòng.
- A.
- Q 2.
Ký tự phân tách dòng mặc định trong tập tin văn bản Python là ký tự nào?
- A.
\n
- B.
\r
- C.
;
- D.
|
- A.
- Q 3.
Trình tự đúng của ba bước làm việc với tập tin là gì?
- A.
Mở tập tin, làm việc với tập tin, đóng tập tin.
- B.
Đóng tập tin, làm việc với tập tin, mở tập tin.
- C.
Làm việc với tập tin, mở tập tin, đóng tập tin.
- D.
Mở tập tin, đóng tập tin, làm việc với tập tin.
- A.
- Q 4.
Vì sao thao tác mở tập tin có thể tốn nhiều thời gian và phát sinh lỗi?
- A.
Hệ thống phải kiểm tra sự tồn tại, quyền truy cập, tình trạng khóa và khả năng đọc hoặc ghi của tập tin.
- B.
Hệ thống phải chuyển toàn bộ tập tin thành danh sách đối tượng trước khi mở.
- C.
Hệ thống luôn phải chạy một chương trình trình duyệt để đọc tập tin.
- D.
Mọi tập tin đều phải được nén trước khi có thể mở.
- A.
- Q 5.
Khi dùng chế độ 'r' để mở một tập tin, điều nào sau đây là đúng?
- A.
Tập tin được mở chỉ để đọc; nếu tập tin không tồn tại thì lệnh mở sẽ phát sinh lỗi.
- B.
Tập tin được mở để ghi và bị xóa nếu đã tồn tại.
- C.
Tập tin được mở để đọc và ghi, đồng thời tạo mới nếu chưa tồn tại.
- D.
Mọi nội dung mới sẽ được ghi vào cuối tập tin mà không xóa dữ liệu cũ.
- A.
- Q 6.
Điều gì xảy ra khi mở một tập tin đã tồn tại bằng chế độ 'w'?
- A.
Nội dung cũ bị cắt bỏ và tập tin được mở để ghi văn bản.
- B.
Nội dung cũ được giữ nguyên và dữ liệu mới được ghi vào cuối.
- C.
Tập tin chỉ có thể đọc và không thể ghi.
- D.
Lệnh luôn báo lỗi vì chế độ 'w' không được phép mở tập tin đã tồn tại.
- A.
- Q 7.
Chế độ nào mở tập tin văn bản để ghi tiếp vào cuối, tạo tập tin mới nếu tập tin chưa tồn tại?
- A.
'a'
- B.
'w'
- C.
'r'
- D.
'x'
- A.
- Q 8.
Chế độ 'x' khác chế độ 'w' như thế nào?
- A.
'x' tạo tập tin mới và báo lỗi nếu đường dẫn đã tồn tại, trong khi 'w' mở và cắt bỏ nội dung tập tin cũ.
- B.
'x' cho phép ghi vào cuối tập tin, còn 'w' chỉ cho phép đọc.
- C.
Hai chế độ hoàn toàn giống nhau.
- D.
'x' chỉ đọc còn 'w' chỉ ghi nhị phân.
- A.
- Q 9.
Chế độ nào mở tập tin văn bản để vừa đọc vừa ghi và tạo mới nếu tập tin chưa tồn tại?
- A.
'w+'
- B.
'r'
- C.
'a'
- D.
'x'
- A.
- Q 10.
Chế độ nào mở tập tin nhị phân để vừa đọc vừa ghi?
- A.
'rb+'
- B.
'rb'
- C.
'wb'
- D.
'ab'
- A.
- Q 11.
Khi truyền buffering bằng 0 cho hàm open, ý nghĩa theo nội dung là gì?
- A.
Không thực hiện trình đệm.
- B.
Thực hiện trình đệm dòng khi truy cập.
- C.
Tự động chọn kích thước bộ đệm mặc định.
- D.
Dùng bộ đệm có kích thước 1 byte.
- A.
- Q 12.
Mệnh đề nào mô tả đúng về các thuộc tính của đối tượng tập tin?
- A.
File.closed cho biết tập tin đã đóng hay chưa, File.mode cho biết chế độ truy cập và File.name cho biết tên tập tin.
- B.
File.mode luôn trả về kích thước tập tin và File.name trả về nội dung tập tin.
- C.
File.closed chỉ có thể được gán trực tiếp trước khi tập tin được mở.
- D.
Không có thuộc tính nào cho biết tập tin đã đóng hay chưa.
- A.
- Q 13.
Lợi ích chính của việc dùng khối lệnh 'with' khi làm việc với tập tin là gì?
- A.
Tập tin được đóng tự động khi rời khối lệnh, kể cả khi xảy ra lỗi.
- B.
Mọi dòng trong tập tin được chuyển thành số nguyên.
- C.
Tập tin luôn được mở ở chế độ nhị phân.
- D.
Tập tin tự động được nén khi đóng.
- A.
- Q 14.
Những công việc quan trọng nào diễn ra khi đóng tập tin?
- A.
Đẩy dữ liệu trong vùng đệm xuống thiết bị lưu trữ, cập nhật thông tin tập tin và giải phóng tài nguyên.
- B.
Chuyển tất cả dòng thành số thập phân và in ra màn hình.
- C.
Xóa vùng đệm mà không ghi nội dung xuống thiết bị lưu trữ.
- D.
Tạo một tập tin mới có cùng tên để sao lưu.
- A.
- Q 15.
Hàm nào trả về một danh sách các chuỗi dòng khi đọc tập tin?
- A.
readlines()
- B.
readline()
- C.
write()
- D.
close()
- A.
- Q 16.
Khi gọi write(data), ràng buộc về kiểu dữ liệu của data là gì?
- A.
Với tập tin văn bản, data phải là str; với tập tin nhị phân, data phải là bytes hoặc bytearray.
- B.
Mọi trường hợp đều chỉ có thể ghi số nguyên.
- C.
Chỉ có thể ghi danh sách và không thể ghi một chuỗi đơn.
- D.
Không có ràng buộc nào đối với dữ liệu ghi.
- A.
- Q 17.
Cặp lệnh nào dùng để xóa một tập tin và kiểm tra sự tồn tại của tập tin trong Python?
- A.
os.remove() và os.path.exists()
- B.
os.rmdir() và os.rename()
- C.
open() và close()
- D.
json.load() và json.dump()
- A.
- Q 18.
Với tài liệu XML được đọc bằng xml.dom.minidom, cách lấy các phần tử có tên 'employee' là gì?
- A.
Gọi getElementsByTagName('employee') trên đối tượng tài liệu hoặc phần tử cha.
- B.
Gọi json.dumps() trên tệp XML.
- C.
Dùng open(..., mode='r') để lấy tất cả thẻ employee.
- D.
Dùng os.remove() với tên thẻ làm tham số.
- A.
- Q 19.
Khi gọi json.dumps(pythonObject), kết quả thuộc loại nào?
- A.
Một chuỗi biểu diễn dữ liệu JSON.
- B.
Một từ điển Python còn nguyên kiểu dữ liệu.
- C.
Một đối tượng tập tin đã được ghi ngay xuống đĩa.
- D.
Một mảng byte luôn ở định dạng UTF-8.
- A.
- Q 20.
Điều gì xảy ra với một biến cục bộ được khai báo trong hàm ngoài khi hàm lồng nhau cần truy cập biến đó?
- A.
Hàm lồng nhau không thể truy cập trực tiếp biến cục bộ đó nếu không dùng nonlocal khi cần gán lại.
- B.
Biến luôn được Python chuyển thành biến toàn cục.
- C.
Biến sẽ bị xóa khỏi bộ nhớ trước khi hàm lồng nhau chạy.
- D.
Mọi hàm lồng nhau đều có thể gán trực tiếp biến cục bộ của hàm ngoài.
- A.
- Q 21.
Từ khóa nonlocal trong Python được dùng để làm gì?
- A.
Tham chiếu và gán giá trị mới cho một biến thuộc phạm vi hàm cha của hàm lồng nhau.
- B.
Khai báo một biến không thuộc phạm vi nào.
- C.
Buộc một tham số trở thành tham số bắt buộc.
- D.
Ngăn hàm lồng nhau truy cập bất kỳ biến nào của hàm cha.
- A.
- Q 22.
Đoạn hàm outer và inner dùng nonlocal x sẽ in ra kết quả nào?
- A.
inner x: nonlocal; outer x: nonlocal
- B.
inner x: nonlocal; outer x: local
- C.
inner x: local; outer x: local
- D.
Chương trình báo NameError vì không có biến x trong inner.
- A.
- Q 23.
Trong định nghĩa hàm, tham số được gán giá trị ngay là gì?
- A.
Tham số mặc định.
- B.
Tham số tùy ý.
- C.
Tham số cục bộ.
- D.
Biến toàn cục.
- A.
- Q 24.
Định nghĩa nào buộc x chỉ được truyền theo vị trí và y chỉ được truyền bằng từ khóa?
- A.
def f(x, /, *, y):
- B.
def f(*x, **y):
- C.
def f(x=1, y=2):
- D.
def f(x: int, y: str):
- A.
- Q 25.
Mệnh đề nào mô tả đúng về *args và **kwargs?
- A.
*args thu thập các đối số vị trí thành tuple, còn **kwargs thu thập các tham số từ khóa thành dictionary.
- B.
*args thu thập tham số từ khóa thành dictionary, còn **kwargs tạo tuple vị trí.
- C.
Cả hai đều bắt buộc người gọi truyền đúng một tham số.
- D.
Cả hai đều chỉ dùng để khai báo giá trị mặc định.
- A.
- Q 26.
Đặc điểm nào là đúng về biểu thức lambda?
- A.
Lambda là hàm ẩn danh, chỉ chứa một biểu thức và trả về kết quả của biểu thức đó.
- B.
Lambda bắt buộc phải có tên hàm để có thể gọi lại.
- C.
Lambda phải chứa nhiều lệnh if, for và return giống một hàm thông thường.
- D.
Lambda chỉ có thể dùng để định nghĩa hàm, không thể truyền như một đối số.
- A.
- Q 27.
Nếu handle(f, x) được định nghĩa để trả về f(x), biểu thức handle(lambda x: x * x, 5) trả về gì?
- A.
25
- B.
10
- C.
None
- D.
TypeError
- A.
- Q 28.
Điều kiện bắt buộc để một hàm đệ quy hoạt động an toàn là gì?
- A.
Phải có điều kiện dừng để hàm không tự gọi vô hạn.
- B.
Hàm đệ quy phải có ít nhất hai tham số.
- C.
Hàm đệ quy không được dùng từ một hàm khác.
- D.
Hàm đệ quy phải dùng biến toàn cục.
- A.
- Q 29.
Với hàm factorial(n) có điều kiện dừng trả về 1 khi n bằng 0, lời gọi factorial(5) trả về gì?
- A.
120
- B.
25
- C.
24
- D.
0
- A.
- Q 30.
Khi độ sâu đệ quy vượt giới hạn mặc định của trình thông dịch Python, lỗi nào thường xuất hiện?
- A.
RecursionError
- B.
IOError
- C.
KeyError
- D.
ZeroDivisionError
- A.
- Q 31.
Từ khóa nào dùng để trả về một giá trị từ hàm Python?
- A.
return
- B.
exit
- C.
break
- D.
continue
- A.
- Q 32.
Hai loại hàm chính được đề cập trong nội dung là gì?
- A.
Hàm dựng sẵn và hàm do người dùng định nghĩa.
- B.
Hàm cục bộ và hàm toàn cục.
- C.
Hàm tuần tự và hàm đệ quy.
- D.
Hàm có tham số và hàm không có tham số.
- A.
- Q 33.
Những lợi thế nào của việc sử dụng hàm được nêu trong nội dung?
- A.
Tránh lặp lại mã nguồn, chia vấn đề phức tạp thành các phần đơn giản và làm mã dễ quản lý.
- B.
Chỉ làm cho chương trình chạy nhanh hơn trong mọi trường hợp.
- C.
Chỉ có tác dụng khi chương trình không có vòng lặp.
- D.
Không có lợi thế nào về khả năng tái sử dụng mã nguồn.
- A.
- Q 34.
Dấu ba nháy kép ngay sau định nghĩa hàm thường dùng để làm gì?
- A.
Tạo docstring mô tả chức năng của hàm.
- B.
Tạo một khối mã không bao giờ được thực thi.
- C.
Bắt buộc hàm trả về ba giá trị.
- D.
Tạo một biến toàn cục có tên giống hàm.
- A.
- Q 35.
Một module Python có thể chứa những thành phần nào?
- A.
Hàm, lớp, biến và các câu lệnh.
- B.
Chỉ có thể chứa các hàm không có tham số.
- C.
Chỉ có thể chứa dữ liệu văn bản.
- D.
Chỉ có thể chứa một hàm duy nhất.
- A.
- Q 36.
Câu lệnh nào import module math với tên thay thế là m?
- A.
import math as m
- B.
from math import as m
- C.
import m from math
- D.
module math = m
- A.
- Q 37.
Cách nào chỉ import thành phần pi và e từ module math?
- A.
from math import pi, e
- B.
from math import *
- C.
import math.pi
- D.
from math as m
- A.
- Q 38.
Cặp mô tả nào sử dụng đúng các hàm thông dụng trong nội dung?
- A.
random.randrange(start, stop, step) tạo số nguyên ngẫu nhiên theo khoảng và bước; eval() đánh giá một biểu thức chuỗi.
- B.
random.randrange() luôn trả về số thực và eval() chỉ đóng tập tin.
- C.
eval() là hàm thoát chương trình và random.randrange() định dạng ngày tháng.
- D.
Cả random.randrange() và eval() đều chỉ nhận đối số kiểu chuỗi.
- A.
- Q 39.
Mục đích chính của việc dùng Parallel và delayed trong joblib là gì?
- A.
Chạy nhiều tác vụ song song trên các lõi CPU khác nhau để tăng tốc xử lý.
- B.
Chuyển tập tin nhị phân thành tập tin văn bản.
- C.
Tạo giao diện đồ họa cho chương trình.
- D.
Thực hiện các phép toán đại số ký hiệu.
- A.
- Q 40.
Trong Parallel(n_jobs=4), ý nghĩa của n_jobs bằng 4 là gì?
- A.
Sử dụng tối đa bốn worker để thực hiện các job song song.
- B.
Chỉ thực hiện đúng bốn tác vụ, bất kể tổng số tác vụ là bao nhiêu.
- C.
Chạy mỗi tác vụ trong bốn tiến trình riêng biệt.
- D.
Bộ nhớ đệm của mỗi worker có dung lượng bốn byte.
- A.
- Q 41.
Cách nào lưu và nạp lại danh sách Python bằng joblib?
- A.
joblib.dump(data, 'data.joblib') rồi joblib.load('data.joblib').
- B.
json.dump(data, 'data.joblib') rồi json.load('data.joblib').
- C.
open('data.joblib', 'r') rồi data.read() để nạp lại.
- D.
os.load(data, 'data.joblib')
- A.
- Q 42.
So với compress=0, tham số compress=3 trong joblib.dump() có ý nghĩa gì?
- A.
Yêu cầu nén dữ liệu ở mức 3; tệp thường có thể nhỏ hơn nhưng không bảo đảm trong mọi trường hợp.
- B.
Tạo ba bản sao của đối tượng.
- C.
Chỉ đọc ba phần tử đầu tiên của đối tượng.
- D.
Bắt buộc tệp kết quả luôn nhỏ hơn theo đúng một tỷ lệ.
- A.
- Q 43.
Ứng dụng thực tế nào của joblib được nêu trong nội dung?
- A.
Lưu mô hình Machine Learning để tái sử dụng và caching kết quả tính toán phức tạp.
- B.
Thiết kế bảng tính Excel và điều khiển định dạng ô.
- C.
Vẽ biểu đồ ba chiều trực tiếp từ dữ liệu.
- D.
Giải phương trình đại số và tính vi tích phân.
- A.
- Q 44.
Vai trò của delayed trong biểu thức Parallel(n_jobs=4)(delayed(math.sqrt)(i) for i in range(10)) là gì?
- A.
Đóng gói mỗi lời gọi hàm cùng đối số thành một job để Parallel thực thi.
- B.
Tự động lưu mô hình vào một tệp.
- C.
Chuyển mọi kết quả thành văn bản JSON.
- D.
Tạo một mảng NumPy từ phạm vi range.
- A.
- Q 45.
SymPy được thiết kế chủ yếu để làm gì?
- A.
Thực hiện tính toán đại số máy tính trên biểu thức ký hiệu.
- B.
Quản lý cơ sở dữ liệu quan hệ.
- C.
Dựng giao diện đồ họa cửa sổ.
- D.
Gửi và nhận tập tin qua mạng.
- A.
- Q 46.
Cách nào định nghĩa hai biến ký hiệu x và y trong SymPy?
- A.
x, y = symbols('x y')
- B.
x, y = list('x y')
- C.
x = int('x'); y = int('y')
- D.
import x from sympy; import y from sympy
- A.
- Q 47.
Vì sao nên viết 2*x thay vì 2x trong biểu thức SymPy được nhập từ Python?
- A.
Dấu * làm phép nhân rõ ràng và tránh cú pháp 2x không hợp lệ trong Python thông thường.
- B.
Dấu * bắt buộc biến x thành số thực.
- C.
Dấu * làm biểu thức trở thành danh sách.
- D.
Biểu thức 2x luôn được Python hiểu là biến có tên 2x.
- A.
- Q 48.
Nếu expr = 2x + 2y, lời gọi expr.subs(x, 2) có ý nghĩa gì?
- A.
Thay mọi xuất hiện của x trong biểu thức bằng giá trị 2.
- B.
Giải phương trình biểu thức bằng x.
- C.
Khai triển biểu thức thành tổng các đơn thức.
- D.
Tính đạo hàm của biểu thức theo x.
- A.
- Q 49.
Sự khác biệt giữa expand() và factor() trong SymPy là gì?
- A.
expand() khai triển biểu thức, còn factor() phân tích biểu thức thành nhân tử.
- B.
expand() vẽ đồ thị, còn factor() giải phương trình.
- C.
Cả hai hàm đều chỉ đọc tệp XML.
- D.
expand() chỉ dùng cho số nguyên và factor() chỉ dùng cho số thực.
- A.
- Q 50.
Mỗi hàm nào của SymPy phù hợp với nhiệm vụ tương ứng?
- A.
solve() giải phương trình, diff() tính đạo hàm và integrate() tính tích phân.
- B.
solve() vẽ đồ thị, diff() xóa tệp và integrate() tạo tệp.
- C.
solve() sinh dữ liệu ngẫu nhiên, diff() nén tệp và integrate() tạo lớp.
- D.
Cả ba hàm đều dùng để nhập một module.
- A.
- Q 51.
Câu lệnh nào tạo một mảng NumPy có kiểu dữ liệu chuỗi?
- A.
np.array([1, 2, 3], dtype='S')
- B.
np.array([1, 2, 3], dtype=list)
- C.
np.array([1, 2, 3], string=True)
- D.
np.array([1, 2, 3], mode='text')
- A.
- Q 52.
np.array([1, 2, 3, 4], ndmin=2) tạo mảng có hình dạng như thế nào?
- A.
(1, 4)
- B.
(4, 1)
- C.
(2, 2)
- D.
(4,)
- A.
- Q 53.
Lệnh nào kiểm tra hình dạng của một mảng NumPy?
- A.
arr.shape
- B.
arr.size()
- C.
arr.ndim()
- D.
arr.length
- A.
- Q 54.
Mảng 12 phần tử có thể được chuyển thành mảng 4 hàng và 3 cột bằng lệnh nào?
- A.
arr.reshape(4, 3)
- B.
arr.reshape(3, 5)
- C.
arr.view(4, 3)
- D.
arr.astype(4, 3)
- A.
- Q 55.
Sự khác biệt giữa arr.copy() và arr.view() là gì?
- A.
copy() tạo dữ liệu độc lập, còn view() tạo một mảng dùng chung vùng nhớ với mảng gốc.
- B.
Cả hai đều tạo một bản sao hoàn toàn độc lập.
- C.
copy() chỉ dùng cho mảng một chiều, còn view() chỉ dùng cho mảng hai chiều.
- D.
copy() đổi kiểu dữ liệu, còn view() đổi hình dạng.
- A.
- Q 56.
Với arr chứa các số 1.1, 2.1 và 3.1, lệnh nào chuyển kiểu dữ liệu sang số nguyên?
- A.
newarr = arr.astype('i')
- B.
newarr = arr.shape('i')
- C.
newarr = arr.copy('i')
- D.
newarr = arr.sort('i')
- A.
- Q 57.
Với arr = np.array([10, 15, 20, 25, 30, 35, 40]), biểu thức arr[1:4] trả về dữ liệu nào?
- A.
[15, 20, 25]
- B.
[10, 15, 20]
- C.
[20, 25, 30]
- D.
[15, 20, 25, 30]
- A.
- Q 58.
np.where(arr == 4) dùng để làm gì?
- A.
Tìm các chỉ số có giá trị thỏa điều kiện arr bằng 4.
- B.
Thay tất cả phần tử bằng giá trị 4.
- C.
Sắp xếp mảng theo giá trị 4.
- D.
Nối hai mảng có giá trị 4.
- A.
- Q 59.
Câu lệnh nào nối arr1 và arr2 thành một mảng duy nhất?
- A.
arr = np.concatenate((arr1, arr2))
- B.
arr = np.reshape((arr1, arr2))
- C.
arr = np.where((arr1, arr2))
- D.
arr = np.sort(arr1, arr2)
- A.
- Q 60.
Lệnh nào trả về một mảng đã sắp xếp từ arr?
- A.
x = np.sort(arr)
- B.
x = np.where(arr)
- C.
x = arr.view()
- D.
x = np.concatenate(arr)
- A.
- Q 61.
Mối quan hệ giữa Figure, Axes và Axis trong Matplotlib là gì?
- A.
Figure chứa một hoặc nhiều Axes; mỗi Axes có các Axis như trục X và trục Y.
- B.
Axis chứa nhiều Figure và mỗi Figure là một Axis.
- C.
Figure, Axes và Axis đều là ba tên khác nhau cho cùng một đối tượng.
- D.
Axes chỉ có thể chứa đúng một Axis và không thể chứa biểu đồ.
- A.
- Q 62.
Đặc điểm nào phù hợp với giao diện pyplot?
- A.
pyplot tự quản lý Figure và Axes hiện hành, nên có thể gọi trực tiếp plt.plot(x, y).
- B.
pyplot bắt buộc phải tạo Figure bằng fig = plt.figure() trước mọi lệnh vẽ.
- C.
pyplot chỉ dùng để đọc và ghi tệp văn bản.
- D.
pyplot không thể hiển thị biểu đồ.
- A.
- Q 63.
Đoạn nào sử dụng đúng giao diện hướng đối tượng của Matplotlib?
- A.
fig = plt.figure(); ax = fig.add_axes([0, 0, 1, 1]); ax.plot(x, y)
- B.
np.array(x, y).plot()
- C.
import os; os.plot(x, y)
- D.
json.figure(x, y)
- A.
- Q 64.
Lệnh fig, axes = plt.subplots(2, 2) tạo cấu trúc nào?
- A.
Một Figure và một mảng 2 hàng, 2 cột chứa bốn Axes.
- B.
Bốn Figure độc lập không có Axes chung.
- C.
Một Figure không có Axes nào.
- D.
Hai Figure và hai Axes độc lập.
- A.
- Q 65.
Khi gọi plt.plot([0, 1, 2], [0, 1, 4]), Matplotlib sẽ thực hiện gì?
- A.
Vẽ một đường đi qua các cặp tọa độ tương ứng theo thứ tự.
- B.
Tạo bốn đường khác nhau.
- C.
Tạo một biểu đồ cột với ba cột.
- D.
Vẽ một đường tròn có bán kính 2.
- A.
- Q 66.
Loại biểu đồ nào phù hợp nhất để so sánh tỷ lệ của nhiều mục trong một tổng thể?
- A.
Pie chart
- B.
Histogram
- C.
Scatter chart
- D.
Contour plot
- A.
- Q 67.
Cặp mô tả nào về histogram và scatter chart là đúng?
- A.
Histogram thể hiện phân bố của dữ liệu số; scatter chart thể hiện mối quan hệ giữa hai biến số.
- B.
Histogram dùng để biểu diễn bề mặt ba chiều; scatter chart dùng để vẽ cột.
- C.
Cả hai biểu đồ đều chỉ dùng để hiển thị mô hình Machine Learning.
- D.
Cả hai biểu đồ đều yêu cầu ba trục X, Y và Z.
- A.
- Q 68.
Mệnh đề nào mô tả đúng contour plot và biểu đồ ba chiều?
- A.
Contour plot biểu diễn mặt bề mặt ba chiều trên mặt phẳng hai chiều; đồ thị 3D được hỗ trợ bởi mplot3d.
- B.
Contour plot là biểu đồ cột ba chiều và mplot3d chỉ dùng để đọc ảnh.
- C.
Cả hai loại đều chỉ dùng để vẽ văn bản toán học.
- D.
Contour plot không sử dụng dữ liệu X, Y và Z.
- A.
- Q 69.
Cặp mô tả nào về các hàm xử lý hình ảnh và Figure là đúng?
- A.
imread đọc ảnh thành mảng, imsave lưu mảng thành ảnh, imshow hiển thị ảnh; show, savefig và close quản lý Figure.
- B.
imread giải phương trình, imsave tích phân và imshow vẽ contour.
- C.
show lưu file, savefig đóng cửa sổ và close tạo Figure mới.
- D.
imsave chỉ hoạt động với mảng hai chiều chứa số nguyên.
- A.
- Q 70.
Mệnh đề nào mô tả đúng cách thêm văn bản và biểu thức toán học trong Matplotlib?
- A.
Dùng ax.text() hoặc ax.annotate() để thêm văn bản; có thể đặt biểu thức toán học trong cặp ký hiệu .
- B.
Dùng os.path.exists() để thêm nhãn lên trục X.
- C.
Dùng json.dumps() để đặt tiêu đề biểu đồ.
- D.
Dùng readlines() để vẽ một đường tròn trên trục.
- A.
Answers and explanations are in mode.