Chuyển đổi từ loại tập hợp này sang loại tập hợp khác rất phổ biến trong python. Tùy thuộc vào nhu cầu xử lý dữ liệu, chúng tôi có thể phải chuyển đổi các cặp giá trị khóa có trong từ điển thành các cặp đại diện cho các bộ giá trị trong một danh sách. Trong bài viết này, chúng ta sẽ xem các cách tiếp cận để đạt được điều này.
Với trong
Đây là một cách tiếp cận đơn giản mà chúng tôi chỉ xem xét
Ví dụ
Adict = {30:'Mon',11:'Tue',19:'Fri'} # Given dictionary print("The given dictionary: ",Adict) # Using in Alist = [(key, val) for key, val in Adict.items()] # Result print("The list of tuples: ",Alist)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
The given dictionary: {30: 'Mon', 11: 'Tue', 19: 'Fri'} The list of tuples: [(30, 'Mon'), (11, 'Tue'), (19, 'Fri')]
Với zip
Hàm zip kết hợp các mục được truyền vào nó dưới dạng tham số. Vì vậy, chúng tôi lấy các khóa và giá trị của từ điển làm tham số cho hàm zip và đặt kết quả dưới một hàm danh sách. Cặp giá trị khóa trở thành các bộ giá trị của danh sách.
Ví dụ
Adict = {30:'Mon',11:'Tue',19:'Fri'} # Given dictionary print("The given dictionary: ",Adict) # Using zip Alist = list(zip(Adict.keys(), Adict.values())) # Result print("The list of tuples: ",Alist)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
The given dictionary: {30: 'Mon', 11: 'Tue', 19: 'Fri'} The list of tuples: [(30, 'Mon'), (11, 'Tue'), (19, 'Fri')]
Với phần phụ
Trong cách tiếp cận này, chúng tôi lấy một danh sách trống và nối cặp giá trị khóa evry dưới dạng các bộ giá trị. Vòng lặp for được thiết kế để chuyển đổi cặp giá trị khóa thành các bộ giá trị.
Ví dụ
Adict = {30:'Mon',11:'Tue',19:'Fri'} # Given dictionary print("The given dictionary: ",Adict) Alist = [] # Uisng append for x in Adict: k = (x, Adict[x]) Alist.append(k) # Result print("The list of tuples: ",Alist)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
The given dictionary: {30: 'Mon', 11: 'Tue', 19: 'Fri'} The list of tuples: [(30, 'Mon'), (11, 'Tue'), (19, 'Fri')]