మీరు మీ చుట్టూ చూస్తున్న ప్రతిచోటా, మీ అవసరాలను తీర్చడానికి ప్రత్యేకంగా నిర్మించిన అనువర్తనాన్ని మీరు కనుగొంటారు. ఈ అనువర్తనాలను అభివృద్ధి చేయడానికి అనేక ప్రోగ్రామింగ్ భాషలు ఉన్నప్పటికీ, వాటిలో ఎక్కువ భాగం ఉపయోగించి నిర్మించబడ్డాయి . పైథాన్ దాని గొప్ప లక్షణాలతో పాటు పెరిగిన పాండిత్యము పట్టికకు ప్రత్యేకమైన సమర్పణలను తెస్తుంది, ఇవి అన్ని సమయాల్లో శక్తివంతమైనవి మరియు చాలా ఉపయోగకరంగా ఉంటాయి. పైథాన్ వ్యాసంలోని ఈ ఇవల్ లో మేము ఈ క్రింది అంశాలను చర్చిస్తాము:
- పైథాన్లో ఇవల్ అంటే ఏమిటి?
- ఇవాల్ యొక్క లోపాలు
- పైథాన్లో ఇవల్ను సురక్షితంగా చేయడం
- ఇవల్ యొక్క ఉపయోగాలు
పైథాన్లో ఇవల్ అంటే ఏమిటి?
పైథాన్ లోని ఎవాల్ ఫంక్షన్ అక్కడ ఉన్న అత్యంత ఆసక్తికరమైన ఎంపికలలో ఒకటి. కొందరు దీనిని హాక్ అని పిలుస్తారు మరియు కొందరు దీనిని సత్వరమార్గం అని పిలుస్తారు, కాని పైథాన్ కోడ్లో పైథాన్ ప్రోగ్రామ్ను అమలు చేయడానికి మీరు దాన్ని ఉపయోగించుకోవచ్చు. చాలా బాగుంది?
మీరు ఎవాల్ ఫంక్షన్ను ఉపయోగించినప్పుడు, మీరు ప్రాథమికంగా ఎవాల్ ఫంక్షన్ యొక్క బ్రాకెట్లో ఉంచబడిన వ్యాఖ్యాతను అమలు చేయమని విజ్ఞప్తి చేస్తున్నారు.
పైథాన్లో ఎవాల్ ఫంక్షన్ను ఉపయోగించడం కోసం వాక్యనిర్మాణం:
eval (వ్యక్తీకరణ, గ్లోబల్స్ = ఏదీ లేదు, స్థానికులు = ఏమీలేదు)
పై వాక్యనిర్మాణంలో,
వ్యక్తీకరణ: ఇది స్ట్రింగ్ లేదా కోడ్ ముక్క, ఇది పైథాన్ ప్రోగ్రామ్లోనే పైథాన్ వ్యక్తీకరణగా అన్వయించబడుతుంది మరియు అంచనా వేయబడుతుంది.
ప్రపంచ: పైన పేర్కొన్న వ్యక్తీకరణను అమలు చేయడానికి అందుబాటులో ఉన్న అన్ని ప్రపంచ పద్ధతులను నిర్వచించడానికి ఉపయోగించే నిఘంటువు ఇది. ఇది ఐచ్ఛిక సంస్థ మరియు దాని ఉపయోగాలు మీ అవసరాన్ని బట్టి ఉంటాయి.
స్థానికులు: గ్లోబల్స్ మాదిరిగానే, ఇది అందుబాటులో ఉన్న స్థానిక పద్ధతులతో పాటు వేరియబుల్స్ను పేర్కొనడానికి ఉపయోగించే మరొక నిఘంటువు.
ఈ ఫంక్షన్ యొక్క ఉపయోగాన్ని బాగా అర్థం చేసుకోవడానికి, ఈ క్రింది ఉదాహరణను చూడండి.
c ++ శ్రేణిని క్రమబద్ధీకరించడం
గణిత దిగుమతి నుండి * డెఫ్ సీక్రెట్_ఫంక్షన్ (): తిరిగి 'సీక్రెట్ కీ 1234' డెఫ్ ఫంక్షన్_క్రియేటర్ (): # వ్యక్తీకరణను అంచనా వేయాలి expr = raw_input ('ఫంక్షన్ను నమోదు చేయండి (x పరంగా):') # వ్యక్తీకరణలో ఉపయోగించిన వేరియబుల్ x = int (raw_input ('x యొక్క విలువను నమోదు చేయండి:')) # మూల్యాంకనం చేసే వ్యక్తీకరణ y = eval (expr) # ప్రింటింగ్ మూల్యాంకనం చేసిన ఫలిత ముద్రణ ('y = {}. ఫార్మాట్ (y)) ఉంటే __name__ ==' __main__ ': function_creator ()
పై ఉదాహరణలో, ఫంక్షన్_క్రియేటర్ అనేది ఒక ఫంక్షన్, ఇది ప్రోగ్రామ్ ఎగ్జిక్యూట్ అయినప్పుడు వినియోగదారు సృష్టించిన గణిత వ్యక్తీకరణలను అంచనా వేస్తుంది.
అవుట్పుట్:
ఫంక్షన్ను నమోదు చేయండి (x పరంగా): x * (x + 1) * (x + 2)
X: 3 విలువను నమోదు చేయండి
y = 60
ఉదాహరణతో జావాలో అడాప్టర్ క్లాస్
విశ్లేషణ
ఇప్పుడు మీరు పైన పంచుకున్న కోడ్ను చూశారు, దాన్ని కొంచెం ముందుకు విశ్లేషించండి.
పై ఫంక్షన్ x వ్యక్తీకరణలోని ఏదైనా వేరియబుల్ను దాని ఇన్పుట్గా తీసుకుంటుంది.
అమలు చేసిన తర్వాత, వినియోగదారు x కోసం విలువను ఇన్పుట్ చేయమని ప్రాంప్ట్ చేయబడతారు, ఆ తరువాత మాత్రమే ప్రోగ్రామ్ ఉత్పత్తి అవుతుంది.
చివరగా, పైథాన్ ప్రోగ్రామ్ పార్స్ చేయడం ద్వారా ఎవాల్ ఫంక్షన్ను అమలు చేస్తుంది
expr
ఒక వాదనగా.
ఇవాల్ యొక్క లోపాలు
పైథాన్ యొక్క ఇతర అంతర్నిర్మిత ఫంక్షన్ల మాదిరిగానే, ఎవాల్ కూడా కొన్ని లోపాలతో వస్తుంది, అది లెక్కించకపోతే సమస్యను సృష్టించవచ్చు.
మీరు పైన పేర్కొన్న ఉదాహరణను పరిశీలిస్తే, ఫంక్షన్ యొక్క ప్రధాన దుర్బలత్వాలలో ఒకటి, ఫంక్షన్_క్రియేటర్ ఏమిటంటే ఇది ప్రోగ్రామ్లోని ఏదైనా దాచిన విలువలను బహిర్గతం చేయగలదు మరియు డిఫాల్ట్గా ఎవాల్ దాని హానికర ఫంక్షన్ను పిలుస్తుంది.
దీన్ని మరింత అర్థం చేసుకోవడానికి, ఈ క్రింది ఉదాహరణను చూడండి.
వినియోగదారు నుండి ఇన్పుట్
ఫంక్షన్ను నమోదు చేయండి (x పరంగా): secret_function ()
X: 0 విలువను నమోదు చేయండి
అవుట్పుట్:
y = రహస్య కీ 1234
ఎవాల్ ఫంక్షన్ను ఉపయోగించడం ద్వారా వచ్చే మరో ప్రమాదకరమైన పరిస్థితి ఏమిటంటే ఓఎస్ మాడ్యూల్ను దిగుమతి చేసుకోవడం. మీరు ఓఎస్ మాడ్యూల్ను దిగుమతి చేసినప్పుడు, యూజర్ నుండి ప్రామాణీకరణ లేకుండా పైథాన్ మీ స్థానిక సిస్టమ్లో ఉన్న ఏదైనా ఫైల్లను చదవడానికి మరియు వ్రాయడానికి అనుమతిస్తుంది. అటువంటి సందర్భంలో, మీరు సింగిల్ను తప్పుగా టైప్ చేస్తేకోడ్ లైన్, మీ స్థానిక ఫైల్లన్నీ తొలగించబడవచ్చు.
ఈ లోపాలన్నింటికీ పరిష్కారం ఎవాల్ ఫంక్షన్ యొక్క సామర్థ్యాలను పరిమితం చేయడం.
పైథాన్లో ఇవల్ సేఫ్ చేయడం
అప్రమేయంగా ఎవాల్ యాక్సెస్ కలిగి ఉన్న ఏదైనా ఫంక్షన్ లేదా ఇప్పటికే నిర్వచించిన ఏదైనా పార్స్ చేసే ఎంపికతో వస్తుంది. మీ కోడ్ను వ్రాసేటప్పుడు దీన్ని దృష్టిలో ఉంచుకుంటే, ఎవాల్ యొక్క సామర్థ్యాలను గణనీయమైన స్థాయిలో పరిమితం చేస్తుంది, తద్వారా ఏమీ తప్పు జరగకుండా చూసుకోవాలి.
ఈ భావనను మరింత అర్థం చేసుకోవడానికి, ఈ క్రింది ఉదాహరణను చూడండి.
ఫైబొనాక్సీ సంఖ్యలు సి ++
గణిత దిగుమతి నుండి * డెఫ్ సీక్రెట్_ఫంక్షన్ (): తిరిగి 'సీక్రెట్ కీ 1234' డెఫ్ ఫంక్షన్_క్రియేటర్ (): # వ్యక్తీకరణను అంచనా వేయాలి expr = raw_input ('ఫంక్షన్ను నమోదు చేయండి (x పరంగా):') # వ్యక్తీకరణలో ఉపయోగించిన వేరియబుల్ x = int (raw_input ('x:' విలువను నమోదు చేయండి)) # సురక్షితమైన నిఘంటువులో # పాసింగ్ వేరియబుల్ x __name__ == '__main__' ఉంటే మూల్యాంకనం చేసిన ఫలిత ముద్రణ ('y = {}'. ఫార్మాట్ (y)): # సురక్షిత పద్ధతుల జాబితా safe_list = ['acos', 'asin', 'atan', 'atan2', 'ceil ',' cos ',' cosh ',' డిగ్రీలు ',' e ',' exp ',' fabs ',' floor ',' fmod ',' frexp ',' hyp ',' ldexp ',' log ', 'log10', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh'] # సురక్షిత పద్ధతుల నిఘంటువును సృష్టిస్తోంది safe_dict = dict ([(k, స్థానికులు (). సురక్షిత జాబితాలో k కోసం (k, ఏదీ లేదు) పొందండి)) function_creator ()
వినియోగదారు నుండి ఇన్పుట్
ఫంక్షన్ను నమోదు చేయండి (x పరంగా): secret_function ()
X: 0 విలువను నమోదు చేయండి
అవుట్పుట్:
పేరు లోపం: పేరు 'సీక్రెట్_ఫంక్షన్' నిర్వచించబడలేదు
ఎవాల్ యొక్క ప్రాప్యతను పరిమితం చేయడం ద్వారా మీరు చూడగలిగినట్లుగా, హానికరమని నిరూపించగల తప్పు అవుట్పుట్ యొక్క అవకాశాలు తిరస్కరించబడ్డాయి.
ఇవల్ యొక్క ఉపయోగాలు
పై విభాగాలలో వివరించినట్లుగా, అనేక భద్రతా కారణాల వల్ల ఎవాల్ సాధారణంగా ఉపయోగించబడదు. కానీ ఇప్పటికీ, ఎవాల్ ఉపయోగించడం ఉపయోగకరంగా ఉంటుందని నిరూపించే ప్రత్యేక ఉపయోగ సందర్భాలు ఉన్నాయి. వీటిలో ముఖ్యమైనవి కొన్ని.
ప్రోగ్రామ్ యొక్క అవుట్పుట్ను సవరించడానికి వినియోగదారు వారి స్వంత స్క్రిప్ట్లెట్లను నమోదు చేయాలనుకుంటే, అప్పుడు ఎవాల్ ఫంక్షన్ ఉపయోగించడం సహాయకరంగా ఉంటుంది.
గణిత ప్రశ్నలను పరిష్కరించడానికి వ్యక్తీకరణలు వ్రాసేటప్పుడు మీరు వ్యక్తీకరణ పార్సర్ రాయడం కంటే చాలా సులభం కనుక మీరు ఎవాల్ ను ఉపయోగించుకోవచ్చు.
ఇప్పుడు మీకు ఎవాల్ గురించి అంతా తెలుసు, ప్రయోజనాలను మరియు లోపాలను దృష్టిలో ఉంచుకుని మీ రోజువారీ ప్రోగ్రామింగ్లో మీరు దీనిని ఉపయోగించుకుంటారని మేము ఆశిస్తున్నాము.
దీనితో, పైథాన్ వ్యాసంలో ఈ ఇవల్ ముగింపుకు వచ్చాము. పైథాన్తో పాటు దాని వివిధ అనువర్తనాలతో లోతైన జ్ఞానం పొందడానికి, మీరు చేయవచ్చు 24/7 మద్దతు మరియు జీవితకాల ప్రాప్యతతో ప్రత్యక్ష ఆన్లైన్ శిక్షణ కోసం.
మాకు ప్రశ్న ఉందా? “ఇవాల్ ఇన్ పైథాన్” యొక్క వ్యాఖ్యల విభాగంలో వాటిని పేర్కొనండి మరియు మేము మీ వద్దకు తిరిగి వస్తాము.