Python, les listes d'augmenter et réduire dynamiquement comme nécessaire pour s'adapter à leur contenu. Les ensembles sont mis en œuvre comme une table de hachage, et comme le Python dictionnaires grandir et rétrécir dynamique en cas de besoin pour s'adapter à leur contenu.
Peut-être que vous avez été à la recherche pour collections.deque (qui prend un maxlen paramètre) ou quelque chose à l'aide d'un heapq (à l'aide de heapq.heappushpop() lorsque vous avez atteint le maximum) à la place?
10
Ici est la version étendue de python list. Il se comporte comme listmais va augmenter BoundExceedErrorsi la longueur est dépassée (essayé en python 2.7):
>>> l =BoundList(length=10)>>> l.extend([1,2,3,4,5,6,7,8,9,10])>>> l
[1,2,3,4,5,6,7,8,9,10]>>># now all these attempts will raise BoundExceedError:>>> l.append(11)>>> l.insert(0,11)>>> l.extend([11])>>> l +=[11]>>> l +[11]>>> l[len(l):]=[11]
6
Une fois que vous avez votre liste, lstvous pouvez
if len(lst)>10:
lst = lst[:10]
Si la taille de plus de 10 éléments, vous tronquez pour dix premiers éléments.
2
Vous ne pouvez pas, les listes et les ensembles sont de nature dynamique, et peut atteindre n'importe quelle taille.
Python n'est pas c++, python est un langage dynamique. Jeux et la liste peut élargir ou de rétrécir à la taille de l'.
Utilisation heapq module, si vous voulez x plus petit ou le plus grand des éléments à partir d'un objet iterable.
heapq.nsmallest(n, iterable[, key])
Retourner une liste avec les n plus petits éléments de l'ensemble de données défini par
itératif. la clé, si elle est fournie, spécifie une fonction à un argument que
est utilisé pour extraire une comparaison clé de chaque élément de l'objet iterable:
key=str.Équivalente inférieure à: triés(itératif, key=clé)[:n]
Vous n'avez pas et n'ont pas besoin d'.
Python, les listes d'augmenter et réduire dynamiquement comme nécessaire pour s'adapter à leur contenu. Les ensembles sont mis en œuvre comme une table de hachage, et comme le Python dictionnaires grandir et rétrécir dynamique en cas de besoin pour s'adapter à leur contenu.
Peut-être que vous avez été à la recherche pour
collections.deque
(qui prend unmaxlen
paramètre) ou quelque chose à l'aide d'unheapq
(à l'aide deheapq.heappushpop()
lorsque vous avez atteint le maximum) à la place?Ici est la version étendue de python
list
. Il se comporte commelist
mais va augmenterBoundExceedError
si la longueur est dépassée (essayé en python 2.7):Utilisation:
Une fois que vous avez votre liste,
lst
vous pouvezSi la taille de plus de 10 éléments, vous tronquez pour dix premiers éléments.
Vous ne pouvez pas, les listes et les ensembles sont de nature dynamique, et peut atteindre n'importe quelle taille.
Python n'est pas c++, python est un langage dynamique. Jeux et la liste peut élargir ou de rétrécir à la taille de l'.
Utilisation heapq module, si vous voulez x plus petit ou le plus grand des éléments à partir d'un objet iterable.
Ou peut-être traversent, module:
Puis utilisez le tranchage ou
itertools.slice
pour obtenir de haut x les éléments de la liste.