¿Qué hace la palabra clave "rendimiento"?
Frecuentes
Visto 2,445 equipos
10941
¿Cuál es el uso de la yield
palabra clave en Python, y ¿qué hace?
Por ejemplo, estoy tratando de entender este código.1:
def _get_child_candidates(self, distance, min_dist, max_dist):
if self._leftchild and distance - max_dist < self._median:
yield self._leftchild
if self._rightchild and distance + max_dist >= self._median:
yield self._rightchild
Y esta es la persona que llama:
result, candidates = [], [self]
while candidates:
node = candidates.pop()
distance = node._get_dist(obj)
if distance <= max_dist and distance >= min_dist:
result.extend(node._values)
candidates.extend(node._get_child_candidates(distance, min_dist, max_dist))
return result
¿Qué pasa cuando el método _get_child_candidates
¿se llama? ¿Se devuelve una lista? ¿Un solo elemento? ¿Se llama de nuevo? ¿Cuándo se detendrán las llamadas posteriores?
1. Este fragmento de código fue escrito por Jochen Schulz (jrschulz), quien hizo una gran biblioteca de Python para espacios métricos. Este es el enlace a la fuente completa: Módulo mspace.
No lo entiendo: una persona hace una pregunta que puede responderse leyendo un libro sobre Python o incluso el manual de Python y se le otorga (actualmente al momento de escribir este comentario) 107,880 puntos y todos los derechos que conlleva ¿con ese? Esta publicación hace al menos tres (3) preguntas, lo que normalmente es motivo de cierre. - Booboo
@Booboo Se puede ganar mucha reputación al inventar una máquina del tiempo y volver atrás y ser uno de los primeros en preguntar sobre los conceptos básicos del lenguaje. No estoy seguro de que haya alguna razón para cerrar esto incluso con los estándares actuales (excepto como un duplicado): las preguntas múltiples son en su mayoría detalles retóricos sobre un solo tema. No estoy seguro de que la reputación sea proporcional a la calidad de la pregunta, pero básicamente está bien. DavidW
@DavidW Entiendo algo de lo que dices. Pero existe tal cosa como exagerar. Lo que me preocupa es que con los puntos van los derechos, como la capacidad de editar mis publicaciones o emitir votos cercanos, que se emiten a alguien que no necesariamente sabe cuál es el final. Realmente debería haber un límite para este tipo de cosas. Yo diría que un límite (posiblemente más alto) en la votación a favor incluso debería aplicarse a las respuestas. - Booboo
@Booboo - tienes razón - el sistema está roto - la votación no los eliminará - NeilG