Câu hỏi phỏng vấn Python
Câu hỏi

Làm thế nào để copy một object trong Python?

Câu trả lời

Trong Python, có một số cách để tạo bản sao của một đối tượng, tùy thuộc vào loại bản sao bạn muốn tạo (bản sao nông - shallow copy, hoặc bản sao sâu - deep copy) và loại đối tượng bạn đang làm việc.

Bản sao nông (Shallow Copy):

Bản sao nông tạo ra một đối tượng mới nhưng không tạo bản sao của các đối tượng con bên trong. Nó chỉ sao chép các tham chiếu đến các đối tượng con.

  • Sử dụng phương thức copy(): Đối với các đối tượng như danh sách (list), bạn có thể sử dụng phương thức copy() để tạo một bản sao nông.

    python Copy
    original_list = [1, 2, 3]
    copied_list = original_list.copy()
  • Sử dụng slicing: Đối với danh sách, bạn cũng có thể sử dụng slicing để tạo một bản sao nông.

    python Copy
    original_list = [1, 2, 3]
    copied_list = original_list[:]
  • Sử dụng hàm copy.copy(): Đối với các loại đối tượng khác, bạn có thể sử dụng hàm copy() từ module copy.

    python Copy
    import copy
    original_obj = [[1, 2], [3, 4]]
    copied_obj = copy.copy(original_obj)

Bản sao sâu (Deep Copy)...

middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Convert string sang number trong Python như thế nào?

junior

Biến cục bộbiến toàn cục trong Python là gì?

senior

Tại sao private methods trong Python lại không thực sự private?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào