2010-07-19 23 views
11

तो __main__ एक गहरे लाल रंग का फ़ाइल में मैं बहुत की तरह एक समारोह को परिभाषित:रूबी बराबर अजगर को

def tell_the_truth() 
    puts "truth" 
end 

वहाँ अजगर के मुख्य करने के लिए एक समान है?

if __name__ == "__main__": 
    tell_the_truth() 

क्या यह फ़ाइल के अंदर फ़ंक्शन को बस कॉल करना है?

tell_the_truth 
+2

अजगर में 'if' के लिए कारण अगर फाइल एक और एक है, जो में शामिल किया गया है बुलाया जा रहा से समारोह को रोकने के लिए है अपने रूबी उदाहरण नहीं करता है (जहां तक ​​मुझे पता है) –

+0

धन्यवाद माइकल। मैं समझता हूं कि क्यों पाइथन में पीछे है। तुलना करने के लिए, मैंने फ़ंक्शन परिभाषा के तहत tell_the_truth() डालने का प्रयास किया है और फिर उस फ़ाइल को "आवश्यकता" का उपयोग करके किसी अन्य रूबी फ़ाइल से आयात करना है। वह प्रिंट "सच्चाई" है। इसलिए जब फ़ाइल आयात की जाती है तो शीर्ष स्तर का विवरण चलाया जाता है। – Rodrigue

उत्तर

25

मेरा मानना ​​है कि यह काम करेगा:

if __FILE__ == $0 
    tell_the_truth() 
end 
संबंधित मुद्दे