7
f = lambda x : 2*x
g = lambda x : x ** 2
h = lambda x : x ** x
funcTriple = (f, g, h)
myZip = (zip (funcTriple, (1, 3, 5)))
k = lambda pair : pair[0](pair[1])
# Why do Output # 1 (2, 9, 3125) and Output # 2 ([ ]) differ?
print ("\n\nOutput # 1: for pair in myZip: k(pair) ...")
for pair in myZip :
print (k(pair))
print ("\n\nOutput # 2: [ k(pair) for pair in myZip ] ...")
print ([ k(pair) for pair in myZip ])
# script output is ...
# Output # 1: for pair in myZip: k(pair) ...
# 2
# 9
# 3125
#
# Output # 2: [ k(pair) for pair in myZip ] ...
# []
वर्क्स ठीक काम करता है। –
हां, मुझे लगता है कि यह पाइथन 2.5 का उपयोग करके पूरी तरह से काम करता है: आउटपुट # 2 [2, 9, 3125] है। हालांकि, जब मैं पायथन 3.0 का उपयोग करता हूं, तो यह "गलत" आउटपुट देता है, और आउटपुट # 2 है []। –
बहुत बहुत धन्यवाद! मैं "जनरेटर-शैली" वस्तुओं और उनके "थकावट" पर पढ़ रहा हूं। –