Tất cả câu hỏi
Ngân hàng câu hỏi trắc nghiệm có giải thích chi tiết.
d = dict()
for c in word:
d[c] = d.get(c, 0) + 1
print(d)Cursor.get()Cursor.execute()Cursor.run()Cursor.fetchmany()Đáp án đúng: "Cursor.execute()". Trong mô-đun sqlite3, đối tượng con trỏ (cursor) lấy từ conn.cursor(); Cursor.execute() gửi một câu SQL tới cơ sở dữ liệu để chạy, ví dụ cur.execute('SELECT title FROM Tracks'). Cần nói thẳng: Cursor.fetchmany() cũng là phương thức hợp lệ, dùng để lấy một số dòng kết quả sau khi truy vấn đã chạy, nên câu này lẽ ra cho chọn hai; vì chỉ được chọn một và câu dẫn nhấn trước hết vào việc thực thi câu lệnh SQL, đáp án lấy execute(), phương thức bắt buộc phải gọi trước khi có kết quả nào để lấy. Phương án "Cursor.fetchmany()" vì thế đúng một phần, phục vụ vế lấy kết quả chứ không thực thi câu lệnh. Phương án "Cursor.get()" không tồn tại trong sqlite3 hay trong chuẩn DB-API của Python. Phương án "Cursor.run()" cũng không tồn tại; thực thi câu lệnh luôn gọi qua execute, cùng các biến thể executemany và executescript.
Đáp án đúng: "DELETE". Lệnh DELETE FROM xoá các dòng dữ liệu khỏi bảng, thường kèm WHERE để chọn dòng cần xoá, ví dụ DELETE FROM Users WHERE email = 'ted@umich.edu'; bảng và cấu trúc cột vẫn còn nguyên. Nếu thiếu WHERE thì mọi dòng bị xoá nhưng bảng vẫn tồn tại. Phương án "REMOVE" không phải lệnh SQL. Phương án "COLLAPSE" cũng không phải lệnh SQL và không mang nghĩa gì trong ngôn ngữ truy vấn. Phương án "DROP" là lệnh có thật nhưng thuộc nhóm định nghĩa cấu trúc: DROP TABLE xoá luôn cả bảng, gồm cấu trúc lẫn toàn bộ dữ liệu, chứ không phải xoá dữ liệu bên trong một bảng vẫn còn đó; câu hỏi nói tới việc xoá dữ liệu khỏi bảng nên DELETE mới đúng.
Đáp án đúng: "CREATE TABLE people; ". Câu lệnh tạo bảng mới trong SQL bắt đầu bằng hai từ khoá CREATE TABLE rồi tới tên bảng; trong thực tế còn kèm danh sách cột trong ngoặc, ví dụ CREATE TABLE people (name TEXT, email TEXT), và SQLite đòi ít nhất một cột mới chịu chạy. Dù viết rút gọn, đây là lựa chọn duy nhất dùng đúng cặp từ khoá tạo bảng. Phương án "MAKE people;" sai vì SQL không có từ khoá MAKE. Phương án "MAKE DATASET people;" cũng không tồn tại; dataset chỉ là khái niệm chung về tập dữ liệu chứ không phải lệnh SQL. Phương án "CREATE people; " thiếu từ chỉ loại đối tượng: sau CREATE phải nói rõ tạo gì, như TABLE, INDEX hay VIEW, nên câu này lỗi cú pháp.
socket.sendto(address, data)socket.address()socket.sendto(data, address)socket.dataĐáp án đúng: "A built-in function". Trong biểu thức type(32), type được gọi như một hàm có sẵn (built-in function): Python cung cấp sẵn, không cần import, nó nhận đối tượng 32 và trả về kiểu của nó, in ra <class 'int'>. Dạng tên, ngoặc tròn, đối số chính là một lời gọi hàm. "A variable" sai vì type không phải tên do người lập trình đặt ra để chứa dữ liệu; về kỹ thuật vẫn gán đè được nhưng việc đó nên tránh. "keyword" sai vì từ khoá là các từ dành riêng như if, def, while, không gán được và không gọi được; type không nằm trong danh sách đó. "A data type" là chỗ dễ phân vân: trong Python 3, type về bản chất là một lớp, kiểu của mọi kiểu, nhưng trong biểu thức này nó được dùng để hỏi kiểu của 32; kiểu dữ liệu ở đây là int, còn type đóng vai trò hàm có sẵn trả lời câu hỏi đó.