मैं एक छोटे से फ़ंक्शन पर एनथॉट ईपीडी-फ्री 7.3-1 का उपयोग कर रहा हूं, और जब मैं एक इंटरैक्टिव सत्र (पीईएलएबी) में कट/पेस्ट करता हूं और इसे चलाता हूं, तो इसमें एक सेकंड से भी कम समय लगता है। जब मैं कमांड लाइन "python probtest.py
" से एक ही कोड चलाता हूं तो इसमें 16 सेकंड लगते हैं।पाइथन इंटरेक्टिव शैल 16x तेज - क्या गलत है?
मैंने पुष्टि की है कि दोनों एक ही पायथन पर्यावरण का उपयोग कर रहे हैं। शायद संबंधित (शायद नहीं) लेकिन .py
फ़ाइल के साथ निर्देशिका में, .pyc
फ़ाइल नहीं है ... मैंने हाल ही में किए गए पाइथन स्क्रिप्ट्स में से कोई भी .pyc फ़ाइलों को संबद्ध नहीं किया है। मैंने फ़ोल्डर के लिए पढ़ने/लिखने की अनुमतियों की जांच की, "मरम्मत अनुमतियां" (मैक ओएसएक्स-शेर) का उपयोग किया, और अनइंस्टॉल/पुनर्स्थापित ईपीडी_फ्री पायथन, लेकिन कोई भाग्य नहीं।
मुझे नुकसान हो रहा है कि कारण क्या हो सकता है। कोड मैं उपयोग कर रहा हूँ (पासों का एक्स संख्या के साधारण परीक्षण, कम से कम y छक्के की तलाश में):
import numpy as np
import sys
def runTest(numDice, numSixes, numThrows = 10000):
nSuccess = 0
for i in range(numThrows):
dList = np.random.randint(1,7,numDice)
if sum(dList==6) >= numSixes:
nSuccess += 1
return float(nSuccess)/numThrows
print runTest(900,150,5000)
print sys.version
क्यों कमांड लाइन अजगर तो बहुत धीमी है के बारे में कोई विचार? अग्रिम में धन्यवाद।
धन्यवाद! वह बिल्कुल समस्या थी! बहुत बहुत धन्यवाद, आपने मेरी सैनिटी बचाई है! –
कोई चिंता नहीं। पिछले हफ्ते मुझे एक बग के साथ कुश्ती करना पड़ा क्योंकि मैं आलसी था और 'numpy import * से' किया था, जिसने 'numpy.any' के साथ बिल्टिन' किसी भी 'को बदल दिया, जिससे अलग-अलग व्यवहार कोड को देखकर डीबग करना लगभग असंभव हो गया। तो यह मेरे दिमाग पर था .. – DSM