Différentes façons de compensation des listes

Est-il une raison pour faire quelque chose de plus compliqué que l'une de ces deux lignes lorsque vous souhaitez effacer une liste en Python?

old_list = []
old_list = list()

La raison pour laquelle je demande, c'est que je viens de voir cela dans certains cours d'exécution de code:

del old_list[ 0:len(old_list) ]
  • Pourquoi faites-vous cela? La Collecte des ordures œuvres. Pourquoi ne pas tout simplement ignorer l'ancienne valeur de la liste et laissez Python nettoyer automatiquement?
  • L'affiche n'a pas écrit le code, et est de se demander pourquoi l'écrivain original peut l'avoir fait.
  • Vous pouvez aussi faire: alors que l: l.pop()
  • LOL. Je suis sûr que c'est efficace.
  • Personne n'a rien dit asbout qu'il soit efficace...
  • Pas liés à votre question, mais vous ne devriez pas utiliser len lors de la spécification d'une tranche. a[:x] signifie en commençant à x et a[x:] signifie x à la fin. a[ 0:len(a) ] peut être écrite comme a[:]. Vous pouvez également utiliser des négatifs à partir de la fin (a[-1] est le dernier élément).

InformationsquelleAutor johannix | 2009-05-12