0
votes

Comment générer une liste d'éléments répétitifs avec une fréquence différente?

Je veux générer une liste de chaînes indiquées ci-dessous:

['EEG' for _ in range(32)]


4 commentaires

Dupliquer possible de Création d'une liste en Python avec plusieurs copies d'un objet donné dans une seule ligne


@Remingtonthurber C'est une petite question différente et j'ai une réponse simple et bonne!


Si vous savez déjà comment reproduire un élément, où êtes-vous coincé? Les listes de concaténation ou de jonction sont une recherche droite.


@prune Oui, vous avez raison, je l'ai fait en utilisant la réponse de Sheldore.


5 Réponses :


1
votes

Utilisez l'opérateur de multiplication, puis concaténate, comme: xxx


0 commentaires

2
votes

Vous pouvez répéter un élément de liste à l'aide de l'opérateur de multiplication, puis ajouter les listes ensemble xxx


0 commentaires

1
votes

Vous pouvez utiliser le Collections.Counter.Elements CODE> Méthode: XXX PRE>

Ce retour: P>

['EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EEG', 'EMG', 'EMG', 'EOG']


0 commentaires

0
votes

Une manière dynamique de faire cela serait: xxx

pour casser cela:

config est une matrice d'objets où STR La clé est la chaîne et la touche freq est le nombre de fois que vous souhaitez répéter le répéter

([[x ["STR" ]] * x ["freq"] pour x dans config]) retourne un tableau de tableaux de chaînes répétées

La partie extérieure aplatit ce réseau complexe dans une liste simple < / p>


1 commentaires

@MOHAMMAMMAD JAVAD En général, il s'appelle "compréhension de la liste" et c'est une technique pratique lorsqu'il s'agit de manipuler les listes. Vous pouvez vérifier ceci: pythonforbeginners.com/basics/list-comphensions-in-python . Dans ce cas particulier, j'ai utilisé la compréhension imbriquée (une compréhension à l'intérieur d'une autre). Vérifiez la sortie de ([[x ["str"]] * x ["freq"] pour x dans config]) et vous verrez ce qu'il fait, et la déclaration externe vous obtient le résultat final de cela.



0
votes

Vous pouvez utiliser l'opérateur de multiplication, puis concaténer chaque liste comme celle-ci: xxx pré>

ou vous pouvez également importer des compteurs de collections, comme un autre utilisateur indiqué, comme celui-ci: P>

from collections import Counter
list(Counter(EEG=32, EMG=2, EOG=1).elements())


0 commentaires