मुझे सिर्फ नमस्ते पता चल रहा है, और मैं सी-जैसी दक्षता के अपने दावों से प्रभावित हूं क्योंकि इसकी एनडैरे में स्मृति पहुंच है। मैं अपने लिए इन और पायथनिक सूचियों के बीच मतभेद देखना चाहता था, इसलिए मैंने एक त्वरित समय परीक्षण चलाया, इसके बिना कुछ सरल कार्यों को निष्पादित किया। अम्पी ने अपेक्षित के रूप में, सरणी के आवंटन और अंकगणितीय परिचालन में परिमाण के क्रम से नियमित सूचियों को बाहर निकाला। लेकिन कोड के इस खंड, दोनों परीक्षणों में समान, एक दूसरे का 1/8 के बारे में एक नियमित रूप से सूची के साथ थोड़ा 2.5 सेकंड से अधिक numpy साथ ले लिया, और:मैं numpy arrays के साथ दक्षता को अधिकतम कैसे कर सकता हूं?
file = open('timing.log','w')
for num in a2:
if num % 1000 == 0:
file.write("Multiple of 1000!\r\n")
file.close()
किसी को भी पता है क्यों यह हो सकता है, और अगर वहाँ क्या कुछ अन्य सिंटैक्स मुझे इस तरह के संचालन के लिए उपयोग करना चाहिए ताकि एनन्ड्रे क्या कर सकता है?
धन्यवाद ...
संपादित करें: वेन की टिप्पणी का जवाब देने के ... मैं उन दोनों को बार-बार और विभिन्न क्रम में समय समाप्त हो गया और काफी समान परिणाम हर बार मिला है, तो मुझे शक है यह एक और प्रक्रिया है। मैंने numpy आयात के बाद फ़ाइल के शीर्ष पर
start = time()
डाल दिया और फिर मेरे पास
print 'Time after traversal:\t',(time() - start)
जैसे वक्तव्य हैं।
क्या आप दिखा सकते हैं कि आपने समय कैसे मापा? क्या आपने अपना ऑर्डर लेने का प्रयास किया था? तथ्य यह है कि आप डिस्क पर लिख रहे हैं समय के मुद्दे को जटिल करते हैं (क्या होगा यदि '[insert-process-here]' numpys test के दौरान उच्च प्राथमिकता वाले डिस्क पर लिख रहा था?) –
सभी प्रतिक्रियाओं के लिए धन्यवाद! सभी जानकारीपूर्ण थे। क्षमा करें मेरे पास वोट देने के लिए पर्याप्त प्रतिष्ठा नहीं है! ए के लिए – pr0crastin8r