comme un projet pour s'habituer à écrire en Python (la seule langue dont j'ai connaissance pour le moment) J'écris un compteur de score Cribbage.Insérer des listes à une liste imbriquée dans une boucle forcée en Python
J'ai trouvé tous les sous-ensembles de longueur 3, 4 et 5 à partir d'un ensemble de 5 nombres. Les sous-ensembles sont tous classés par ordre numérique. La fonction ci-dessous est censée trouver les sous-ensembles qui sont des nombres dans l'ordre, par exemple [1, 2, 3] ou [3, 4, 5].
def straight_counter(subset, length):
straights = []
a = 0 # Variable for incremental increase
for i in range(0, length - 2): # Select one of the first three numbers of a set of 3-5 (which are already ordered)
run = 1
x = 1
while i + x < length: # Ensure that we do not go beyond the final index
if subset[i + x - 1] + 1 == subset[i + x]: # Is the next number one greater than the currently selected number
run += 1 # Count how many numbers we have in order (will be maximum of 5)
x += 1
else:
break
est ici où j'essaie d'obtenir uniquement les sous-ensembles qui sont tous les numéros dans l'ordre. Mais lorsque je tente d'ajouter dans une liste imbriquée je continue à écrire sur le premier indice de la liste à chaque fois et la liste est que jamais un élément à long quand je l'imprime
if run == length: # If the run of consecutive numbers uses all of the numbers e.g [1, 2, 3] and not [1, 2, 4]
straights.insert(a, subset) # I would like to add the list as the first index of a different list
a += 1 # Increase a so that the next valid subset will be at the next index
print(straights)
Y at-il une raison évidente pour laquelle cette est passe? Ou peut-être y a-t-il une façon plus simple d'essayer cela. Merci
Par exemple dans la liste d'entrée des numéros
[1, 1, 2, 3, 4]
Je cherche à créer une liste imbriquée de:
[[1, 2, 3], [1, 2, 3], [2, 3, 4], [1, 2, 3, 4], [1, 2, 3, 4]].
Quels sont tous les ensembles de nombres consécutifs de longueur 3 ou plus.
Je n'ai pas compris ce que vous essayez de faire. Pourriez-vous fournir un exemple des données d'entrée et de la sortie attendue de l'algorithme? – Mathieu
@Mathieu Salut, J'ai mis à jour le poste avec un exemple d'entrée et de sortie –
Merci maintenant, c'est clair, je vais jeter un oeil. – Mathieu