से एक मूल्य लौटने में असमर्थ मैं कोड का एक छोटा सा टुकड़ा को समझने के लिए मानों कोड के अन्य वर्गों में इस्तेमाल किया जा सकता वापस लौटाना होगा। निम्नलिखित में मैं केवल वैरिएबल जेड, या मान स्नूज़ वापस करना चाहता हूं। लेकिन यह काम नहीं करता है। कृपया कोई मुझे समझने में मदद कर सकता है कि यह क्यों काम नहीं करेगा?एक समारोह
import time
def sleepy(reps, snooze):
t = []
for x in range(reps):
x = time.time()
time.sleep(snooze)
y = time.time()
z = y - x
t.append(z)
print 'difference = ', z*1000
print 'total:', (sum(t)/reps) * 1000
return z
sleepy(10, 0.001)
print z # does not like this.
यदि मैं स्नूज़ प्रिंट करता हूं तो यह भी grumbles। ऐसा क्यों है?
@IcyFlame: क्या सवाल में ** नहीं ** परिवर्तन कोड!पूरी समस्या यह है कि 'z' वापस आ गया है लेकिन एक चर में संग्रहीत नहीं है, उस चर को जोड़ने के आसपास मत जाओ। –
@MartijnPieters लेकिन मुझे लगता है कि चूंकि 'z'' लूप 'के दायरे के अंदर है, इसलिए यह – manas
@silent_warrior को वापस करने के लिए दृश्यमान नहीं होगा: नहीं, पायथन केवल मॉड्यूल और कार्यों के लिए एक नया दायरा बनाता है (सूची के साथ, निर्देश और सेट समझ, साथ ही जनरेटर अभिव्यक्तियों और भेड़ के बच्चे, कार्यों के विशेष रूपों के रूप में)। एक लूप में आवंटित चर के बाकी हिस्सों में दिखाई दे रहे हैं। –