Hàm copy là một trong số các hàm được hỗ trợ sẵn của Kiểu dữ liệu Dictionary trong ngôn ngữ lập trình Python được sử dụng để tạo một bản sao của từ điển hiện tại.
Bản sao này chứa các cặp key-value tương tự như từ điển gốc, nhưng là một đối tượng mới độc lập, không ảnh hưởng đến từ điển gốc khi thay đổi.
1. Cú pháp hàm copy
Cú pháp hàm copy trong Kiểu dữ liệu Dictionary của Python (Python Dictionary cop
y) như sau:
dictObj.copy()
Tham số:
- Hàm copy() không chấp nhận bất kỳ tham số nào.
Kiểu dữ liệu trả về:
- Hàm trả về một bản sao (copy) của từ điển.
Phiên bản Python hỗ trợ:
- Hàm copy() được hỗ trợ từ Python 2.x trở đi, bao gồm cả Python 3.x.
Chú ý:
- Hàm copy là một hàm hay phương thức của đối tượng từ điển, nghĩa là nó hoạt động trên các thực thể cụ thể của lớp từ điển (các đối tượng từ điển), không phải là phương thức của lớp (class).
2. Một số ví dụ
2.1. Hàm copy với một từ điển rỗng
Python code:
empty_dict = {}
copied_empty_dict = empty_dict.copy()
print("Empty dictionary:", empty_dict)
print("Copied empty dictionary:", copied_empty_dict)
# Thay đổi bản sao rỗng, không ảnh hưởng đến từ điển gốc
copied_empty_dict['x'] = 10
print("Empty dictionary after modification:", empty_dict)
print("Copied empty dictionary after modification:", copied_empty_dict)
Kết quả:
Original dictionary: {'a': 1, 'b': 2, 'c': 3}
Copied dictionary: {'a': 1, 'b': 2, 'c': 3}
Original dictionary after modification: {'a': 1, 'b': 2, 'c': 3}
Copied dictionary after modification: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
2.2. Hàm copy và update từ điển bản sao
Python Code:
original_dict = {'a': 1, 'b': 2, 'c': 3}
copied_dict = original_dict.copy()
print("Original dictionary:", original_dict)
print("Copied dictionary:", copied_dict)
# Thay đổi bản sao, không ảnh hưởng đến từ điển gốc
copied_dict['d'] = 4
print("Original dictionary after modification:", original_dict)
print("Copied dictionary after modification:", copied_dict)
Kết quả:
Original dictionary: {'a': 1, 'b': 2, 'c': 3}
Copied dictionary: {'a': 1, 'b': 2, 'c': 3}
Original dictionary after modification: {'a': 1, 'b': 2, 'c': 3}
Copied dictionary after modification: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
2.3. Hàm copy và cập nhật từ điển đã copy
Python code:
mixed_dict = {'name': 'John', 'age': 30, 'is_student': False}
copied_mixed_dict = mixed_dict.copy()
print("Original mixed dictionary:", mixed_dict)
print("Copied mixed dictionary:", copied_mixed_dict)
# Thay đổi bản sao, không ảnh hưởng đến từ điển gốc
copied_mixed_dict['age'] = 31
print("Original mixed dictionary after modification:", mixed_dict)
print("Copied mixed dictionary after modification:", copied_mixed_dict)
Kết quả:
Original mixed dictionary: {'name': 'John', 'age': 30, 'is_student': False}
Copied mixed dictionary: {'name': 'John', 'age': 30, 'is_student': False}
Original mixed dictionary after modification: {'name': 'John', 'age': 30, 'is_student': False}
Copied mixed dictionary after modification: {'name': 'John', 'age': 31, 'is_student': False}
Trong các ví dụ trên, sau khi thay đổi bản sao của từ điển (sử dụng dict.copy()
), từ điển gốc không bị ảnh hưởng và vẫn giữ nguyên dữ liệu của mình.