Ho una funzione foreach che chiama la funzione specificata su ogni elemento che contiene. Voglio ottenere il minimo da questi elementi, ma non ho idea di come scrivere lambda o funzione o anche una classe che possa gestirlo. Grazie per l'aiuto. Python, lambda, trova minimo
posso utilizzare la mia funzione foreach in questo modo:
o.foreach(lambda i: i.call())
o
o.foreach(I.call)
non mi piace fare un elenchi o altri oggetti. Voglio iterare attraverso di esso e trovare min.
riesco a scrivere una classe che fanno il pensare, ma ci dovrebbe essere una soluzione migliore di quella:
class Min:
def __init__(self,i):
self.i = i
def get_min(self):
return self.i
def set_val(self,o):
if o.val < self.i: self.i = o.val
m = Min(xmin)
self.foreach(m.set_val)
xmin = m.get_min()
Ok, quindi suppongo che il mio metodo .foreach è un'idea non-python. Dovrei fare la mia lezione ripetibile perché tutte le tue soluzioni sono basate su elenchi e quindi tutto diventerà più facile.
In C# non ci sarebbe alcun problema con la funzione lambda del genere, quindi penso che anche questo python sia così potente.
Puoi per favore postare qualche esempio di codice di quello che hai ottenuto finora? – csl
+1 per il tag di possibili compiti –