2013-05-09 15 views
6

मान लीजिए के रूप में बड़ा डेटा गुजर मैं दो अजगर काम करता है, समारोह 1 और समारोह 2 है।प्रदर्शन जब समारोह पैरामीटर

समारोह 1समारोह 2 कॉल करेंगे और पैरामीटर एक बड़ा डेटा (जैसे, 100 हजार तत्वों के साथ एक शब्दकोश) है।

मैं अगर वहाँ बुला के बीच किसी भी प्रदर्शन अंतर है सोच रहा हूँ समारोह 2समारोह 1, जिसका अर्थ है मैं बड़ा डेटा पैरामीटर पारित करने के लिए की जरूरत है, और लागू करने समारोह 2 में समारोह 1 सीधे, में जो मतलब है कि मुझे बड़े डेटा पैरामीटर को पारित करने की आवश्यकता नहीं है।

धन्यवाद।

पीएस: मुझे लगता है कि मुख्य प्रश्न यह है कि पायथन पैरामीटर, मूल्य या संदर्भ (सूचक) द्वारा पास पैरामीटर पास करता है?

संपादित करें: ऐसा लगता है कि यह एक भ्रमित समस्या है। How do I pass a variable by reference? एक अच्छा जवाब है।

+2

तो जब आप दोनों विकल्पों का प्रयास करते थे और फिर बार-बार परिणाम निकालते थे तो क्या परिणाम थे? :) –

+1

पायथन सभी संदर्भ से गुज़र चुके हैं, इसलिए आपको ठीक होना चाहिए :-) –

+0

@LevLevitsky परीक्षण ठीक है लेकिन अक्सर आंतरिक कार्यकलापों पर एक सटीक उत्तर बेहतर है – Basic

उत्तर

8

पायथन मूल्य से संदर्भ-वस्तुएं पास करता है। शब्दावली विवादास्पद और बदसूरत है, लेकिन कोई वास्तविक प्रदर्शन अंतर नहीं होना चाहिए।

उन सभी विवरणों के लिए these answers देखें (उम्मीद है)।

+0

लिंक के लिए धन्यवाद! – mitchelllc

1

पाइथन "पास" की शब्दावली एक दुष्प्रभाव है जो मैं नहीं जाना चाहता हूं। लेकिन वास्तव में स्टैक पर क्या पारित किया जाता है एक संदर्भ है। इसलिए आपके विकल्पों में से कोई भी बड़ी मेमोरी लागत नहीं है।

संबंधित मुद्दे