目次

1. Python को टर्नरी अपरेटर के हो?

Python मा सर्त अभिव्यक्तिको संक्षिप्त लेखन विधि

Python को टर्नरी अपरेटर (Ternary Operator) ले सर्त अभिव्यक्तिलाई एकै लाइनमा लेख्न सकिने उपयोगी संरचना हो। सामान्य if-else कथन प्रयोग गरेर सर्त विभाजन गर्दा, कोडलाई धेरै लाइनमा लेख्नुपर्छ, तर टर्नरी अपरेटर प्रयोग गर्दा छोटोमा समेट्न सकिन्छ। यस अपरेटरले कोडलाई संक्षिप्त बनाउँछ र पढ्न सजिलो बनाउँछ। अब, आधारभूत संरचना हेर्नुहोस्।
result = मान1 if शर्त else मान2
उपरोक्त संरचनामा, शर्त सत्य भएमा मान1 फिर्ता हुन्छ, र असत्य भएमा मान2 फिर्ता हुन्छ। यसले छोटो कोडमा नतिजा निर्धारण गर्न र उपयुक्त प्रक्रिया गर्न सम्भव बनाउँछ।

टर्नरी अपरेटरको प्रयोगको आधारभूत उदाहरण

उदाहरणका लागि, संख्याले धनात्मक हो या ऋणात्मक हो निर्धारण गर्ने कोड विचार गरौं।
x = 5
result =नात्मक संख्या" if x > 0 else "ऋणात्मक संख्या"
print(result)
यो कोडमा, x 0 भन्दा ठूलो भएमा “धनात्मक” को रूपमा निर्धारण हुन्छ, अन्यथा “ऋणात्मक संख्या” को रूपमा आउटपुट हुन्छ। यसरी, सरल सर्त अभिव्यक्तिहरू लेख्दा टर्नरी अपरेटर उपयोगी हुन्छ।

2. टर्नरी अपरेटर प्रयोग गर्ने फाइदाहरू

कोडको संक्षिप्तता र पठनीयता सुधार

टर्नरी अपरेटरको मुख्य फाइदा भनेको कोडलाई संक्षिप्त रूपमा लेख्न सक्नु हो। विशेष गरी छोटो सर्त अभिव्यक्तिहरूमा, सामान्य if-else वाक्य प्रयोग गर्दा बडो दोहोर्याइँ हुने सम्भावना हुन्छ। तर टर्नरी अपरेटर प्रयोग गरेर, सर्त विभाजनलाई एकै लाइनमा व्यक्त गर्न सकिन्छ, जसले परिणामस्वरूप कोड पढ्न सजिलो हुन्छ।
age = 20
status = "वयस्क" if age >= 18 else "नाबालिग"
print(status)
उपरोक्त उदाहरणमा, age १८ वर्ष वा सोभन्दा माथि भएमा “वयस्क” र अन्यथा “नाबालिग” को रूपमा निर्धारण हुन्छ। केवल एकै लाइनमा लेख्न सकिने कारणले कोडको पठनीयता उच्च हुन्छ र बुझ्न सजिलो बनाउँछ।

सरल सर्तहरूमा द्रुत प्रक्रिया

सामान्य if-else वाक्यसँग तुलना गर्दा, टर्नरी अपरेटरले प्रक्रिया गति अलिकति तेज हुन सक्छ। यो छोटो सर्त अभिव्यक्तिहरूलाई प्रक्रिया गर्दा कोडघन हुने कारणले कार्यान्वयन गति थोरै बढ्ने हो। तथापि, ठूलो आकारको कोडमा गति भिन्नता प्रायः प्रभाव नपुग्ने भएकाले, यो मुख्यतया सरल परिस्थितिहरूमा फाइदाजनक हुन्छ।
侍エンジニア塾

3. टर्नरी अपरेटरको उदाहरण

टर्नरी अपरेटरको मूलभूत प्रयोग उदाहरण

यहाँ, टर्नरी अपरेटरको वास्तविक प्रयोगका केही उदाहरणहरू प्रस्तुत गरिएका छन्।
number = -3
result = "धनात्मक संख्या" if number > 0 else "ऋणात्मक संख्या"
print(result)  # आउटपुट: ऋणात्मक संख्या
यस उदाहरणमा, number धनात्मक संख्या हो या ऋणात्मक संख्या हो निर्धारण गरिन्छ। साधारण सर्त शाखा हो, तर टर्नरी अपरेटर प्रयोग गरेर केवल एक लाइनमा प्रक्रिया पूरा गर्न सकिन्छ।

नेस्ट गरिएको टर्नरी अपरेटर

यदि धेरै सर्तहरू प्रक्रिया गर्नुपर्छ भने, टर्नरी अपरेटरलाई नेस्ट गरेर प्रयोग गर्न सकिन्छ। उदाहरणका लागि, संख्या धनात्मक हो, ऋणात्मक हो, वा शून्य हो भन्ने निर्धारण गर्ने कोड विचार गरौं।
x = 0
result = "धनात्मक संख्या" if x > 0 else "ऋणात्मक संख्या" if x < 0 else "शून्य"
print(result)  # आउटपुट: शून्य
यसरी, नेस्ट गरिएको सर्त अभिव्यक्ति प्रयोग गरेर, जटिल शाखा पनि संक्षिप्त रूपमा लेख्न सकिन्छ। तर, धेरै धेरै सर्तहरू नेस्ट गर्दा, कोडको पढ्न सजिलोपन बिग्रिन सक्छ, त्यसैले सावधानी आवश्यक छ।

4. सूची अभिव्यक्ति र टर्नरी अपरेटरको संयोजन

दक्ष सूची प्रक्रिया

टर्नरी अपरेटरलाई सूची अभिव्यक्तिसँग संयोजन गर्दा अत्यन्त उपयोगी हुन्छ। सूचीभित्रका तत्वहरू सर्त अनुसार प्रक्रिया गर्दा टर्नरी अपरेटर प्रयोग गरेर दक्ष कार्य सम्भव हुन्छ।
numbers = [i * 2 if i % 2 == 0 else i for i in range(10)]
print(numbers)  # आउटपुट: [0, 1, 4, 3, 8, 5, 12, 7, 16, 9]
यो कोडमा, सूचीnumbersका प्रत्येक तत्व यदि सम संख्या हो भने २ गुणा गरिन्छ, अन्यथा सोही मान प्रयोग गरिन्छ। टर्नरी अपरेटर र सूची अभिव्यक्तिलाई संयोजन गरेर, संक्षिप्त र दक्ष सूची संचालन सम्भव हुन्छ।
RUNTEQ(ランテック)|超実戦型エンジニア育成スクール

5. अनाम कार्य (लाम्डा अभिव्यक्ति) र त्रि-शर्तीय अपरेटर

लाम्डा अभिव्यक्तिमा त्रि-शर्तीय अपरेटरको प्रयोग

त्रि-शर्तीय अपरेटर अनाम कार्य (लाम्डा अभिव्यक्ति) सँग संयोजन गर्दा पनि उपयोगी हुन्छ। लाम्डा अभिव्यक्ति प्रयोग गरेर सरल सर्तीय शाखा बनाउँदा त्रि-शर्तीय अपरेटर प्रयोग गर्दा अत्यन्त छोटो कोडमा कार्य परिभाषित गर्न सकिन्छ।
f = lambda x: "सम" if x % 2 == 0 else "विषम"
print(f(5))  # आउटपुट: विषम
यस उदाहरणमा, f नामक लाम्डा कार्य प्रयोग गरेर संख्याले सम हो या बिषम हो भनी निर्धारण गरिन्छ। लाम्डा अभिव्यक्ति र त्रि-शर्तीय अपरेटरलाई संयोजन गर्दा कोड अझ संक्षिप्त हुन्छ।

6. त्रि-ऑपरेटर प्रयोग गर्दा ध्यान दिनुपर्ने बुँदाहरू

नेस्टिङ्गले पठनीयता घट्ने

त्रि-ऑपरेटर उपयोगी छन्, तर नेस्ट गरेर धेरै प्रयोग गर्दा कोडको पठनीयता घट्ने सम्भावना हुन्छ। जटिल सर्त अभिव्यक्तिहरूलाई एकै लाइनमा लेख्दा, पछि कोड पढ्दा बुझ्न कठिन हुन्छ, त्यसैले धेरै प्रयोग नगर्नु राम्रो हुन्छ।
result = "A" if score >= 90 else "B" if score >= 80 else "C" if score >= 70 else "D"
यस प्रकारको नेस्ट गरिएको त्रि-ऑपरेटर सरल अवस्थामा प्रभावकारी हुन्छ, तर सर्तहरू धेरै भएमा पठनीयता अत्यन्त घट्छ। यस्तो अवस्थामा, सामान्य if-else कथन प्रयोग गर्नु उपयुक्त हुन्छ।

7. टर्नरी अपरेटरको सर्वोत्तम अभ्यास

सरल शर्तहरूमा प्रयोग गर्नुहोस्

टर्नरी अपरेटर सरल शर्त विभाजनमा प्रयोग गर्न सबैभन्दा उपयुक्त हुन्छ। जटिल शर्तहरूमा, पढ्न सजिलोता बिग्रने सम्भावना भएकोले, if-else कथन प्रयोग गर्नु सुरक्षित हुन्छ। विशेष गरी, १-२ शर्तहरू छोटो रूपमा प्रक्रिया गर्दा यो प्रभावकारी हुन्छ।
x = 10
result = "positive" if x > 0 else "negative"
यसरी, यदि सरल विभाजन हो भने, टर्नरी अपरेटर अत्यन्त प्रभावकारी उपाय बनिन्छ।

8. टर्नरी अपरेटरको प्रदर्शनको विचार

प्रदर्शनमा प्रभाव

टर्नरी अपरेटर सामान्य if-else कथनको तुलनामा अलिकति छिटो हुन सक्छ। यसको कारण टर्नरी अपरेटर सरल संरचना भएकोले, बहु-लाइनको if-else कथनजस्तै मूल्यांकन प्रत्यक्ष रूपमा गरिन्छ। तर, जटिल शर्तहरूलाई टर्नरी अपरेटरले प्रक्रिया गर्दा नेस्टिङ गहिरो हुन्छ, जसले उल्टो रूपमा प्रदर्शन घट्न सक्छ। उदाहरणका लागि, तलको जस्तै शर्त अभिव्यक्ति विचार गरौं।
result = "A" if score >= 90 else "B" if score >= 80 else "C" if score >= 70 else "D"
यस प्रकारको नेस्टेड टर्नरी अपरेटरमा, शर्त जटिल हुने कारण कोड बुझ्न समय लाग्ने सम्भावना धेरै हुन्छ। थप रूपमा, यदि प्रदर्शन समस्या बन्यो भने, सरल if-else कथनमा सर्नु विचार गर्नु पर्छ।

जटिल शर्तहरूमा सावधान रहनुहोस्

टर्नरी अपरेटरले, यदि कार्यसम्पादन वा भारी गणना समावेश छ भने, शर्त सत्य होस् वा असत्य, दुवै अवस्थामा कार्यान्वयन हुन सक्छ। उदाहरणका लागि, तलको जस्तै कोडमा अनावश्यक कार्यसम्पादन कल हुन सक्छ।
result = expensive_function() if condition else default_value
यस्ता अवस्थामा, if-else कथन प्रयोग गरेर पहिले शर्त मूल्यांकन गरी, कार्यसम्पादन कल गर्ने कि नगर्ने निर्णय गर्नु अधिक प्रभावकारी हुन्छ।

9. अक्सर सोधिने प्रश्नहरू

त्रि-शर्त अपरेटर कहिले प्रयोग गर्नु पर्छ?

त्रि-शर्त अपरेटर सरल सर्त विभाजनलाई छोटो रूपमा लेख्न चाहनुहुन्छ भने उपयुक्त हुन्छ। यदि एकै लाइनमा परिणाम फिर्ता गर्न चाहनुहुन्छ, सूची अभिव्यक्तिहरूमा, वा लाम्ब्डा अभिव्यक्तिमा सर्त प्रयोग गर्न चाहनुहुन्छ भने विशेष गरी उपयोगी हुन्छ। उदाहरणका लागि, संख्या सकारात्मक हो कि नकारात्मक हो निर्धारण गर्ने अवस्थामा वा सरल स्ट्रिङ् सञ्चालनहरूमा प्रयोग गर्न सकिन्छ।
result = "धनात्मक" if number > 0 else "ऋणात्मक"
यसरी, सरल सर्तलाई एकै लाइनमा व्यक्त गर्न सकिने कारण, छोटो कोड आवश्यक पर्ने अवस्थामा यो प्रभावकारी हुन्छ।

त्रि-शर्त अपरेटर कहिले टाढा राख्नु पर्छ?

त्रि-शर्त अपरेटर टाढा राख्नु उपयुक्त हुने अवस्था जटिल सर्तहरू समावेश हुँदा हो। बहु-स्तरीय सर्त अभिव्यक्तिहरूलाई त्रि-शर्त अपरेटरमा नेस्ट गर्दा पढ्न सजिलो हुँदैन, र पछि कोड पुनरावलोकन गर्दा बुझ्न कठिन हुन्छ। साथै, प्रदर्शन महत्त्वपूर्ण हुने अवस्थामा, अनावश्यक गणना हुन सक्ने कारणले सामान्य if-else कथन प्रयोग गर्नु राम्रो हुन्छ।

त्रि-शर्त अपरेटर र if-else कथन, कुन राम्रो?

परिस्थितिको आधारमा प्रयोग फरक पार्नु नै उत्तम हुन्छ। यदि सर्त सरल छ भने त्रि-शर्त अपरेटर प्रयोग गर्दा दक्षता बढ्छ, तर जटिल सर्त अभिव्यक्तिहरू वा पढ्न सजिलोतालाई प्राथमिकता दिने अवस्थामा सामान्य if-else कथन चयन गर्नु उपयुक्त हुन्छ।