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.

    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.

    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.

    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

Có thể có static methods trong Python không?

senior

Làm thế nào để làm việc với transitive dependencies trong Python?

junior

Namespace trong python là gì?

Bình luận

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

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