列表和字典是用來存儲數據的兩種數據結構。列表存儲異構數據類型,字典存儲鍵值對中的數據。這裡,我們正在將 Python 列錶轉換為字典。因為列表是有序的,而字典是無序的,所以輸出的順序可能不同。 Python 列表按照以下方式存儲元素。
student_marks = [56, 78, 96, 37, 85]
另一方面,字典是無序的,並且存儲唯一的數據。它將數據存儲在鍵值對中,其中每個鍵都與其值相關聯。 Python 字典按照以下方式存儲數據。
student_dict = {'Abhinay': 56, 'Sharma': 78, 'Himanshu': 96, 'Peter': 37}
在本教程中,我們將學習 Python 列表到字典的轉換。
樣本輸入:
Input : ['Name', 'Abhinay', 'age', 25, 'Marks', 90]
Output : {'Name', 'Abhinay', 'age', 25, 'Marks', 90}
Input : ['a', 10, 'b', 42, 'c', 86]
Output : {'a', 10, 'b', 42, 'c', 86}
讓我們了解以下方法。
方法 1 使用字典推導
我們可以利用字典推導把列錶轉換成字典。讓我們理解下面的代碼。
示例-
student = ["James", "Abhinay", "Peter", "Bicky"]
student_dictionary = { stu : "Passed" for stu in student }
print(student_dictionary)
輸出:
{'James': 'Passed', 'Abhinay': 'Passed', 'Peter': 'Passed', 'Bicky': 'Passed'}
解釋-
在上面的代碼中,我們創建了一個要轉換成字典的學生列表。使用字典壓縮,我們將字典中的列錶轉換成一行。列表元素被調整為鍵並作為值傳遞。
讓我們理解另一個例子。
示例- 2
list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
square_dict = {n: n*n for n in list1}
print(square_dict)
輸出:
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81, 10: 100}
說明:
在上面的代碼中,我們已經用數字-正方形鍵/值對創建了正方形 _ 字典。
方法 2-使用 zip()函數
zip() 函數用於將兩個值壓縮在一起。首先,我們需要創建一個迭代器並初始化為任何變數,然後類型轉換為 dict() 函數。
讓我們理解下面的例子。
示例-
def Convert_dict(a):
init = iter(list1)
res_dct = dict(zip(init, init))
return res_dct
# Driver code
list1 = ['x', 1, 'y', 2, 'z', 3]
print(Convert_dict(list1))
輸出:
{'x': 1, 'y': 2, 'z': 3}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/238127.html