Categories: Tài liệu IT

Top 5 Câu Hỏi Phỏng Vấn Python Cần Biết

Published by

Bài viết này được viết lại dựa trên nội dung gốc của tác giả Kiên Nguyễn.

Bạn đã thử sức với những câu hỏi phỏng vấn Python dưới đây chưa? Đây là cách để bạn kiểm tra trình độ Python của mình. Dễ thôi, không khó lắm đâu. Thử ngay thôi!

5. Đoạn code sau in ra gì?

Bắt đầu nhẹ nhàng với đoạn code dưới đây. Hầu hết những người mới học Python đều thấy dễ dàng với câu hỏi này.

listA = [1, 2, 3, 4, 5]
print(listA[1:10])

Câu trả lời đúng là B – []. Đúng vậy, chú ý dấu hai chấm : trong câu lệnh slice. Kết quả là một list rỗng.

Nhưng nếu bạn gõ listA[10], kết quả chắc chắn là Index Error (do list chỉ có 5 phần tử). Tuy nhiên trong trường hợp này, chúng ta đang cố gắng slice list, nên kết quả không bao giờ là Index Error.

4. Đoạn code in ra gì?

list1 = [[]] * 3
list2 = [1, 2, 3]
list3 = list1.copy()

list1[0].append(1)
list2.append(5)

print(list1)
print(list2)
print(list3)

Đáp án là C. Trong đoạn code trên, list1 là danh sách chứa 3 phần tử rỗng, nhưng tất cả ba phần tử này đều trỏ tới cùng một giá trị.

Khi thêm giá trị 1 vào list1[0], tất cả các phần tử đều bị thay đổi theo. Kết quả cuối cùng sẽ là [[1], [1], [1]].

Ồ, câu này dễ quá. Đi tiếp câu lý thuyết đi!

3. Python có multi-threading không? Có cách nào viết code Python chạy đồng thời không?

Đáp án là B. Trong Python, có cái gọi là Global Interpreter Lock (GIL), nó đảm bảo rằng chỉ có một luồng (thread) được thực thi tại một thời điểm.

Tuy nhiên, Python cũng có một module gọi là threading để hỗ trợ công việc đa luồng.

Trời ơi, câu này tôi đúng rồi đấy! Lý thuyết thì đủ rồi, quay lại với câu hỏi nữa nhé.

2. *args, **kwargs là gì? Sự khác biệt?

Câu này dễ không có gì phải bàn cãi.

*args được sử dụng khi bạn không biết chính xác có bao nhiêu đối số (arguments) được truyền vào cho một hàm hoặc khi bạn muốn truyền một danh sách các đối số đặc biệt.

**kwargs được sử dụng khi bạn biết chính xác bao nhiêu đối số được truyền vào cho một hàm.

Cũng có thể sử dụng *bob**billy, nhưng ít người dùng.

Hai câu lý thuyết rồi, quay lại với câu hỏi nhé. Quá dễ rồi!

1. Đoạn code sau in ra gì?

Đáp án là A. Cái list2 thì dễ hiểu rồi, nó in ra [1, 2, 3] vì bạn đã pass đúng giá trị cho nó.

Đối với list1list3, đây là một câu hỏi phức tạp hơn. Dựa vào cách Python định nghĩa function, cả list1list3 ban đầu đều trỏ đến cùng một giá trị.

Khi bạn thực hiện thêm giá trị vào list1, tất cả các phần tử trong danh sách sẽ được thêm vào giá trị đó. Vì vậy, kết quả cuối cùng sẽ là [[1], [1], [1]].

Cảm ơn bạn đã đọc bài viết này. Nếu bạn thấy hay, hãy like và chia sẻ bài viết Top 5 Câu Hỏi Phỏng Vấn Python này nhé.

Đừng quên ghé thăm kieblog.vn để tìm hiểu thêm một số câu hỏi phỏng vấn Python khác.

Cảm ơn bạn đã đọc bài viết, nhớ like và share Facebook page nha!

Nguồn: Bài viết gốc được đăng tải tại kieblog.vn.

This post was last modified on Tháng Năm 7, 2024 11:57 chiều

Đinh Thái Hoàng

Đinh Thái Hoàng - tác giả của Laptrinhc.edu.vn, chuyên sâu trong lĩnh vực lập trình. Trang web chia sẻ kiến thức, hướng dẫn và tin tức về lập trình, giúp bạn khám phá thế giới mã nguồn và nâng cao kỹ năng coder.

Published by

Bài đăng mới nhất

Tổng hợp app bán hàng online uy tín nhất tại Việt Nam

Tổng hợp app bán hàng online uy tín nhất tại Việt Nam

Khám phá và tận dụng tiềm năng kinh doanh trên nhiều nền tảng là điều…

5 ngày ago

HỌC THIẾT KẾ MOBILE APP Ở ĐÂU UY TÍN?

Mobile App đang trở thành một phần thiết yếu trong cuộc sống hiện đại. Với…

5 ngày ago

Cách phá mật khẩu Windows bằng DLC Boot

Bạn đã bao giờ quên mật khẩu máy tính và không biết phải làm sao?…

5 ngày ago

Cách kiểm tra và cài đặt Driver cho Windows 10 chuẩn nhất

Driver chính là phần mềm giúp hệ điều hành nhận diện phần cứng trên máy…

5 ngày ago

Top 10 công cụ viết phần mềm tốt nhất

Hiện nay, lập trình viên không cần phải thực hiện toàn bộ công việc lập…

5 ngày ago

Những Công Ty Lập Trình Ứng Dụng Cho IOS Hàng Đầu Việt Nam

Lập trình ứng dụng cho iOS không chỉ đơn thuần là một quyết định khó…

5 ngày ago