ఈ వ్యాసం పైథాన్లో జాబితాలను క్రమబద్ధీకరించడానికి ఒక గైడ్ను కవర్ చేస్తుంది. పైథాన్ జాబితా వస్తువు ఒకటి లేదా అంతకంటే ఎక్కువ కామాతో వేరు చేయబడిన అంశాల సమాహారం. ఇది పునరుత్పాదక వస్తువు మరియు లూప్ స్టేట్మెంట్లు మరియు ఇతర ఎక్స్ప్రెషన్లను ఉపయోగించి జాబితాపై పునరుక్తి చేయడం ద్వారా దాని మూలకాలను యాక్సెస్ చేయవచ్చు. క్రమబద్ధీకరించిన మరియు క్రమబద్ధీకరించిన పద్ధతులను ఉపయోగించి మీరు పైథాన్ జాబితాను క్రమబద్ధీకరించవచ్చు, రెండూ వ్యాసంలో వివరించబడ్డాయి. ఈ వ్యాసంలోని అన్ని కోడ్ నమూనాలను ఉబుంటు 21.04 లో పైథాన్ 3.9.5 తో పరీక్షించారు.
క్రమబద్ధీకరణ పద్ధతి
క్రమబద్ధీకరణ పద్ధతి జాబితాను స్థానంలో ఉంచుతుంది. మరో మాటలో చెప్పాలంటే, మీరు దాని మూలకాన్ని క్రమబద్ధీకరించడానికి మరియు క్రమం చేయబోతున్న జాబితా వస్తువును ఇది సవరించును. మీకు అసలు జాబితా అవసరం లేకపోతే మరియు జాబితాలో ఉన్న అంశాల క్రమాన్ని మార్చడంలో పట్టింపు లేకుంటే, జాబితాను క్రమబద్ధీకరించడానికి పైథాన్లో ఇది అత్యంత సమర్థవంతమైన పద్ధతి. ఈ ఉదాహరణను పరిగణించండి:
ది= [2, 8, 6, 4]
ది.క్రమబద్ధీకరించు()
ముద్రణ (ది)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
[2, 4, 6, 8]
కోడ్ నమూనాలోని మొదటి స్టేట్మెంట్ జాబితాను నిర్వచిస్తుంది. తరువాత, క్రమబద్ధీకరణ పద్ధతిని జాబితాలో పిలుస్తారు. మీరు జాబితాను ముద్రించినప్పుడు, అసలు జాబితా యొక్క ఆర్డర్ మార్చబడిందని మీరు చూడవచ్చు.
అప్రమేయంగా, పైథాన్ జాబితాను ఆరోహణ క్రమంలో క్రమీకరిస్తుంది. మీరు జాబితాను అవరోహణ క్రమంలో క్రమం చేయాలనుకుంటే, దిగువ కోడ్ నమూనాలో చూపిన విధంగా రివర్స్ పద్ధతిని ఉపయోగించండి:
ది= [2, 8, 6, 4]
ది.క్రమబద్ధీకరించు()
ది.రివర్స్()
ముద్రణ (ది)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
[8, 6, 4, 2]రివర్స్ పద్ధతి కొత్త జాబితాను సృష్టించకుండా పైథాన్ జాబితాను కూడా మారుస్తుంది.
మీ జాబితాలో స్ట్రింగ్ ఎలిమెంట్లు ఉంటే, దానిపై సార్టింగ్ మెథడ్ని పిలవడం ద్వారా అక్షరాలుగా ఆర్డర్లు చేయబడతాయి, అక్కడ చిహ్నాలు మరియు సంఖ్యలు ముందుగా ఆర్డర్ చేయబడతాయి. దిగువ కోడ్ నమూనాను చూడండి:
ది= ['s', 'కు', 'తో', '4', '#']ది.క్రమబద్ధీకరించు()
ముద్రణ (ది)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
['#', '4', 'కు', 's', 'తో']మీరు స్ట్రింగ్ ఎలిమెంట్లను కలిగి ఉన్న జాబితాలో రివర్స్ పద్ధతిని కూడా ఉపయోగించవచ్చు.
ది= ['s', 'కు', 'తో', '4', '#']ది.క్రమబద్ధీకరించు()
ది.రివర్స్()
ముద్రణ (ది)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
['తో', 's', 'కు', '4', '#']క్రమబద్ధీకరించిన పద్ధతి
క్రమబద్ధీకరించిన పద్ధతి కూడా పైథాన్ జాబితాను క్రమబద్ధీకరించే విధంగానే క్రమబద్ధీకరిస్తుంది. అయితే, అసలు జాబితాను సవరించడానికి బదులుగా, ఇది కొత్త జాబితాను అందిస్తుంది, తద్వారా మీరు దాన్ని తిరిగి ఉపయోగించాలనుకుంటే మీ అసలు జాబితాను తాకకుండా ఉంటుంది. దిగువ కోడ్ను పరిగణించండి:
జాబితా 1= ['s', 'కు', 'తో', '4', '#']జాబితా 2= క్రమబద్ధీకరించబడింది(జాబితా 1)
ముద్రణ (జాబితా 1,జాబితా 2)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
['s', 'కు', 'తో', '4', '#'] ['#', '4', 'కు', 's', 'తో']జాబితా 1 చెక్కుచెదరకుండా ఉందని మరియు జాబితా 2 ఇప్పుడు క్రమబద్ధీకరించబడిన అంశాలను కలిగి ఉందని మీరు అవుట్పుట్లో చూడవచ్చు. మీరు ఆర్డర్ చేసే పద్దతిని మార్చడానికి జాబితా 2 లోని రివర్స్ పద్ధతిని కూడా ఉపయోగించవచ్చు.
రివర్స్ ఆర్గ్యుమెంట్
క్రమబద్ధీకరణ జాబితాను అవరోహణ క్రమంలో పొందడానికి మీరు క్రమబద్ధీకరణ మరియు క్రమబద్ధీకరణ పద్ధతులలో రివర్స్ ఫంక్షన్కు ప్రత్యామ్నాయంగా రివర్స్ ఆర్గ్యుమెంట్ను ఉపయోగించవచ్చు. క్రమబద్ధీకరణ క్రమాన్ని మార్చడానికి నిజమైన విలువను అందించండి:
జాబితా 1= ['s', 'కు', 'తో', '4', '#']జాబితా 2= క్రమబద్ధీకరించబడింది(జాబితా 1,రివర్స్=నిజమే)
ముద్రణ (జాబితా 1,జాబితా 2)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
['s', 'కు', 'తో', '4', '#'] ['తో', 's', 'కు', '4', '#']జాబితా యొక్క మూలకాలను క్రమబద్ధీకరించడానికి మీ స్వంత లాజిక్ను పేర్కొనడానికి కీ ఫంక్షన్ను ఉపయోగించడం
క్రమబద్ధీకరించిన మరియు క్రమబద్ధీకరించిన పద్ధతులలో, మీరు అదనపు కీ వాదనను పేర్కొనవచ్చు, అది కాల్ చేయగల ఫంక్షన్ను దాని విలువగా తీసుకుంటుంది. ఈ కీలక వాదన అంతర్నిర్మిత పైథాన్ మాడ్యూల్స్ నుండి ఇప్పటికే ఉన్న ఫంక్షన్ను కేటాయించవచ్చు లేదా మీరు మీ స్వంత ఫంక్షన్ను అనుకూల లాజిక్తో సరఫరా చేయవచ్చు. దిగువ కోడ్ నమూనాను చూడండి:
జాబితా 1= ['ఎ బి సి డి ఇ', 'xyz', 'ijkl']జాబితా 2= క్రమబద్ధీకరించబడింది(జాబితా 1,కీ=లెన్)
ముద్రణ (జాబితా 1,జాబితా 2)
జాబితా 1.క్రమబద్ధీకరించు(కీ=లెన్)
ముద్రణ (జాబితా 1)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
['ఎ బి సి డి ఇ', 'xyz', 'ijkl'] ['xyz', 'ijkl', 'ఎ బి సి డి ఇ']['xyz', 'ijkl', 'ఎ బి సి డి ఇ']
కోడ్ నమూనా క్రమబద్ధీకరించబడిన మరియు క్రమబద్ధీకరించే పద్ధతులలో కీ వాదన యొక్క ఉపయోగాన్ని వివరిస్తుంది. దానికి సరఫరా చేయబడిన ఫంక్షన్ను లెన్ అని పిలుస్తారు, ఇది స్ట్రింగ్ ఆబ్జెక్ట్ లేదా ఇటరబుల్ పొడవును నిర్ణయిస్తుంది. ఫంక్షన్ లేదా కాల్ చేయదగినది వాస్తవానికి ఒక ఆర్గ్యుమెంట్ మాత్రమే తీసుకోవాలి. మీరు బ్రేస్లను ఉపయోగించకుండా కీ వాదనకు కేటాయించండి. కీ ఆర్గ్యుమెంట్కు సరఫరా చేయబడిన కాల్ చేయదగిన ఫంక్షన్ జాబితాలోని ప్రతి మూలకంపై పిలువబడుతుంది. ఈ కాలబుల్ పద్ధతి నుండి తిరిగి వచ్చిన విలువలు జాబితాను క్రమబద్ధీకరించడానికి కీగా ఉపయోగించబడతాయి. అందువల్ల, లెన్ ఫంక్షన్ను జాబితాలోని కీలక అంశాలకు వాటి నిడివి, అంటే చిన్నది నుండి పొడవైన వరకు క్రమబద్ధీకరించడం. ముందుగా చెప్పినట్లుగా, క్రమబద్ధీకరణ పద్దతిని రివర్స్ చేయడానికి మీరు ఎల్లప్పుడూ రివర్స్ పద్ధతిని ఉపయోగించవచ్చు.
మీరు మీ స్వంత అనుకూల ఫంక్షన్ లేదా ఒక-లైనర్ లాంబ్డా ఫంక్షన్లను కూడా ఉపయోగించవచ్చు, అది ఒకే వ్యక్తీకరణ విలువను అందిస్తుంది. దిగువ జాబితాలోని నమూనా నమూనాను చూడండి, ఇక్కడ జాబితాలో ఫ్రూట్ డబ్బాల యొక్క ప్రస్తుత జాబితా యొక్క టపుల్స్ ఉన్నాయి:
జాబితా 1= [('మామిడి', 99), ('నారింజ', 51), ('అరటి', 76)]జాబితా 1.క్రమబద్ధీకరించు(కీ=లాంబ్డాజాబితా: జాబితా[1])
ముద్రణ (జాబితా 1)
పై కోడ్ నమూనాను అమలు చేసిన తర్వాత, మీరు ఈ క్రింది అవుట్పుట్ను పొందాలి:
[('నారింజ', 51), ('అరటి', 76), ('మామిడి', 99)]లాంబ్డా ఫంక్షన్ ఒక ఆర్గ్యుమెంట్ ఇన్వెంటరీతో సరఫరా చేయబడుతుంది, ఇది జాబితాలోని ప్రతి మూలకం టుపుల్ రూపంలో ఉంటుంది. ఇది ప్రతి టపుల్ యొక్క రెండవ మూలకాన్ని కీగా చూపుతుంది (ఇండెక్స్ 1 వద్ద). సార్టింగ్ ఫంక్షన్ అన్ని టపుల్స్ను దాని రెండవ ఎలిమెంట్ ద్వారా ఆరోహణ క్రమంలో క్రమీకరిస్తుంది. క్రమబద్ధీకరణ క్రమాన్ని రివర్స్ చేయడానికి మీరు తుది ఫలితంపై రివర్స్ ఫంక్షన్ లేదా రివర్స్ ఆర్గ్యుమెంట్ను కూడా ఉపయోగించవచ్చు.
ముగింపు
పైథాన్లో ఇటరబుల్ జాబితాలోని విషయాలను మీరు క్రమబద్ధీకరించడానికి ఉపయోగించే కొన్ని మార్గాలు ఇవి. అంతర్నిర్మిత క్రమబద్ధీకరణ పద్ధతుల కంటే విభిన్న అవసరాలను కలిగి ఉన్న అనువర్తనాలకు తగిన మీ స్వంత అనుకూల సార్టింగ్ లాజిక్ను వ్రాయడానికి కీలక వాదన మిమ్మల్ని అనుమతిస్తుంది.