Maison  >  Article  >  développement back-end  >  Programme Python pour diviser une liste en deux

Programme Python pour diviser une liste en deux

WBOY
WBOYavant
2023-09-19 15:13:021212parcourir

Programme Python pour diviser une liste en deux

En Python, une seule variable peut contenir plusieurs éléments en utilisant une liste. L'un des quatre types de données intégrés à Python pour stocker des collections de données est une liste ; les trois autres sont des tuples, des ensembles et des dictionnaires, chacun ayant son propre objectif.

Qu'est-ce qu'une liste ?

Les crochets sont utilisés pour construire des listes. Les outils les plus puissants en Python sont les listes, car elles ne sont pas forcément homogènes. Les types de données tels que les entiers, les chaînes et les objets peuvent tous être trouvés dans une liste. Étant donné que les listes sont mutables, elles peuvent être modifiées même après leur création.

Dans cet article, nous explorerons différentes façons de diviser une liste en deux à l'aide de la programmation Python. La liste est l'un des types de données mutables pouvant stocker des collections d'objets. Avec ces conseils, vous pourrez facilement diviser n’importe quelle liste en deux !

Utilisez la technologie de découpage

Dans la première scène, la liste est divisée en deux moitiés. Selon la longueur de la liste, ces moitiés peuvent être de taille égale ou inégale. Les listes peuvent être divisées à l'aide de méthodes de découpage.

Algorithme

  • Créez une liste et initialisez son index médian avec la moitié de sa longueur.

  • Coupez-le en deux, en indexant du début au milieu et en indexant du milieu à la fin.

  • Imprimez la liste originale et la liste moitié-moitié.

  • Triez chaque moitié et fusionnez-les dans une liste triée.

  • Enfin, imprimez cette nouvelle liste fusionnée et triée.

Exemple

L'exemple suivant crée une liste de 6 éléments puis définit l'index sur 3. La liste est ensuite divisée en deux moitiés en fonction de cet index : la première moitié contient tous les éléments précédant l'index et la seconde moitié contient tous les éléments qui le suivent. Enfin, il imprime les deux moitiés de la liste.

#create list
list_1 = [10,20,30,40,50,60]
index = 3
first_half = list_1 [:index]
second_half = list_1 [index:]
print('The primary list is: ',list_1)
print("First half of list is ",first_half)
print("Second half of list is ",second_half)

Sortie

The primary list is: [10, 20, 30, 40, 50, 60]
First half of list is [10, 20, 30]
Second half of list is [40, 50, 60]

Ici, dans la méthode expliquée ci-dessus, nous avons prédéfini l'index et la longueur de la liste. Que se passe-t-il si l'indice de division ou la taille des deux parties n'est pas précisé ? L'étape suivante consiste à déterminer l'index du milieu de la liste, ce qui peut être fait en multipliant la longueur de la liste par 2. Cependant, si la longueur de la liste est un entier impair ou si la liste n’est pas symétrique, alors lorsque nous divisons par la longueur de la liste, nous obtiendrons une valeur à virgule flottante. liste. Pour arrondir le résultat, nous utiliserons l’opérateur d’arrondi vers le bas (//).

Exemple

Dans cette méthode, notre principale préoccupation est de résoudre une condition différente, c'est-à-dire que si le nombre d'éléments demandés par l'utilisateur est un nombre impair, alors quel est le processus pour terminer la tâche. Ici, la fonction split renvoie deux listes qui ne sont pas égales car la liste contient un nombre impair d'éléments. Le milieu est (5/2) = 2,5 car la liste est longue de 5 éléments. La valeur entière la plus proche inférieure ou égale au résultat de la division est renvoyée par l'opérateur d'arrondi. Dans ce cas, l’opérateur d’arrondi à l’inférieur produit 2 et non 2,5.

Algorithme

  • Définissez une fonction qui accepte une liste de nombres et demande à l'utilisateur de saisir une valeur.

  • Utilisez une boucle for pour parcourir la liste,

  • Utilisez ensuite la fonction append() pour diviser chaque nombre par 2 et trouver son index du milieu.

  • Inviter l'utilisateur à saisir sa saisie une fois terminé.

L'exemple suivant montre un programme divisant une liste de nombres saisis par l'utilisateur en deux moitiés. Il demande à l'utilisateur de saisir le nombre d'éléments qu'il souhaite ajouter à la liste, puis l'invite à saisir un élément à la fois.

L'index du milieu est calculé en divisant la longueur de la liste par 2, puis en utilisant cet index pour appeler split_list() , qui utilise le découpage pour séparer la première moitié et la seconde moitié de la liste et renvoie les deux listes respectivement.

def split_list(input_L,n):
   first_half = input_L[:n]
   second_half = input_L[n:]
return first_half,second_half
if __name__ == "__main__" :
   list_1 = []
   length = int(input("Enter the number of elements you want in list : "))
   for i in range(0, length):
      item = int(input("Enter the element for list "+str(i+1)+" :"))
      list_1.append (item)

   middle_index = length//2
   first,second = split_list (list_1,middle_index)
   print ("Primary list: ", list_1)
   print ("First half of the list is: ", first)
   print ("second half of the list is: ", second)

Sortie

Lors de l'exécution du programme ci-dessus, la sortie suivante est générée -

Enter the number of elements you want in list: 5
Enter the element for list 1:98
Enter the element for list 2:60
Enter the element for list 3:45
Enter the element for list 4:33
Enter the element for list 5:55
Primary list: [98, 60, 45, 33, 55]
First half of the list is: [98, 60]
second half of the list is: [45, 33, 55]

Conclusion

Dans cet article, nous utilisons Python pour diviser une liste en deux en utilisant différentes méthodes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer