Ինչպես փոխակերպել Python բառարանը ցուցակի
Վարպետեք Python տվյալների կառուցվածքների օգտագործումը: Իմացեք, թե ինչպես վերածել բառարանը ցուցակի:
Տվյալների մանիպուլյացիան շատ է տեղի ունենում ծրագրավորման մեջ՝ կախված այն խնդրից, որը դուք մտադիր եք լուծել: Դուք հաճախ կարող եք ինքներդ ձեզ գտնել տվյալների մի կառուցվածքը մյուսի փոխակերպում: Որոշ տեսակներ այնքան նման են, որ նրանց միջև փոխակերպումը պարզ գործընթաց է:
Python-ում բառարանը ներդիր կամ հարթեցված ցուցակի վերածելը հանրաճանաչ փոխակերպումներից մեկն է, որը դուք ինքներդ կկատարեք:
Փոխակերպեք Python բառարանը ցուցակի, օգտագործելով for Loop-ը
for loop-ը թույլ է տալիս ձեզ ավելի շատ ուշադրություն դարձնել ձեր տվյալներին, մինչդեռ Python բառարանը վերածում է ցուցակի:
Օրինակ՝ հետևյալ կոդը բառարանը վերածում է ներդիր ցուցակի.
myDictionary = {"A": "Python", "B": "JavaScript", "C": "Node"}
convertedList = []
for i in myDictionary:
convertedList.append([i, myDictionary[i]])
print(convertedList)
# Output: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]
Վերոնշյալ կոդը յուրաքանչյուր բանալի (i) և արժեքի (myDictionary[i]) զույգը զետեղում է առանձին ցուցակներում և ավելացնում դրանք դատարկ ցուցակում:
Դա նույնն է, ինչ գրելը.
for key, value in myDictionary.items():
convertedList.append([key, value])
Դուք կարող եք նաև յուրաքանչյուր զույգ տեղադրել հավաքածուի կամ բազմակի մեջ: Ձեզ անհրաժեշտ է ընդամենը փոխարինել քառակուսի փակագծերը ([]) բանալու շուրջ, արժեքը զույգ գանգուր փակագծերով ({}) կամ փակագծերով։ (()) համապատասխանաբար:
Դուք կարող եք նաև հասնել դրան՝ օգտագործելով for հանգույցը Python-ի ցուցակի ընկալման հատկության հետ միասին.
convertedList = [[i, myDictionary[i]] for i in myDictionary]
Python բառարանը հարթ ցուցակի վերածելու գործառույթ
Թեև վերը նշված for loop ընտրանքները ստեղծում են ներդիր ցուցակ, դուք կարող եք այն հետագայում վերածել ուղիղ ցուցակի, եթե դա այն է, ինչ ցանկանում եք:
Հետևյալ ֆունկցիան դա անում է.
def convertToStraightList(sampleDict):
flatList = []
for key, value in sampleDict.items():
flatList.extend([key, value])
return flatList
print(convertToStraightList(myDictionary))
# Output: ['A', 'Python', 'B', 'JavaScript', 'C', 'Node']
Վերոնշյալ գործառույթը վերադարձնում է հարթեցված ցուցակ, և հայեցակարգը պարզ է: Օղակը յուրաքանչյուր բանալու ևարժեք զույգին ավելացնում է ցուցակին, որը ֆունկցիան վերադարձնում է այն ավարտվելուց հետո:
Ներկառուցված One-Liner գործառույթների օգտագործումը
Եվ քարտեզ և zip ֆունկցիաները թույլ են տալիս այս խնդրի մեկ տողով Python լուծումներ՝ տարբեր արդյունքներով: Դրանք կարող են ավելի հարմար լինել, քան for հանգույցը՝ կախված ձեր խնդրից, և, իհարկե, ավելի հարմար են:
zip ֆունկցիան արտադրում է բազմակի ներդիր ցուցակ.
convertedList = list(zip(myDictionary.keys(), myDictionary.values()))
print(convertedList)
# Output: [('A', 'Python'), ('B', 'JavaScript'), ('C', 'Node')]
Մյուս կողմից, քարտեզ ֆունկցիան տալիս է ցուցակների ցանկ.
convertedList = list(map(list, myDictionary.items()))
print(convertedList)
# Output: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]
Փոխակերպեք Python ցուցակների և բառարանների միջև ցանկացած ձևով
Բառարանը ցուցակի վերածելու այս տարբեր եղանակները Python-ում բավականին պարզ են: Այսպիսով, դուք կարող եք շրջել բառարանը ցուցակի, բայց կարող եք նաև հակառակն անել՝ Python ցուցակը վերածելով բառարանի: