1
votes

Python - Comment mettre des tuples dans une seule liste?

J'ai des variables de tuples:

students = [("Allan", "Anderson"),("Barry", "Byars")]

Je veux les mettre dans une liste:

student1 = ("Allan", "Anderson")
student2 = ("Barry", "Byars")
brendan = ("Brendan","Smith")
sandy = ("Sandy","Garner")

Comment feriez-vous cela? J'ai 7 variables de tuples et y a-t-il un moyen efficace de le faire?

Je sais que Students.append () peut le faire mais comme j'ai 7 variables, y a-t-il un moyen plus rapide?


2 commentaires

Avez-vous une convention pour vos variables? tous commencent par le préfixe student ?


certains commencent par les prénoms, par exemple brendan = ('brendan', 'smith')


4 Réponses :


4
votes

S'il n'y a pas de structure pour les noms de vos variables, c'est le moyen le plus simple.

[('Allan', 'Anderson'), ('Barry', 'Byars'), ('Brendan', 'Smith'), ('Sandy', 'Garner')]
students = [student1, student2, brendan, sandy]


0 commentaires

0
votes

Vous pouvez définir vos variables comme un dictionnaire où les clés sont les noms des variables.

Par exemple:

students = list(vars_dict.values())

puis en utilisant les valeurs de dict () méthode récupère toutes les valeurs sous forme de liste:

vars_dict = {
"student1": ("Allan", "Anderson"),
"student2": ("Barry", "Byars")
}


0 commentaires

-1
votes

Le moyen le plus simple d'y parvenir peut être,

student1 = ("Allan", "Anderson")
student2 = ("Barry", "Byars")
student = [student1, student2]

print(student)


0 commentaires

7
votes

Vous devriez utiliser une meilleure structure de données ici (comme un dictionnaire):

[('Allan', 'Anderson'), ('Barry', 'Byars'), ('Brendan', 'Smith'), ('Sandy', 'Garner'), ('John', 'Doe')]

Sortie

Students["JohnDoe"] = ("John", "Doe")

De cette façon, si vous voulez ajouter une autre liste, il vous suffit d'ajouter une seule ligne dans votre dictionnaire sans changer de logique:

[('Allan', 'Anderson'), ('Barry', 'Byars'), ('Brendan', 'Smith'), ('Sandy', 'Garner')]

Sortie:

Students = {
    "student1": ("Allan", "Anderson"),
    "student2": ("Barry", "Byars"),
    "brendan": ("Brendan", "Smith"),
    "sandy": ("Sandy", "Garner")
}

StudentList = [student for student in Students.values()]
print(StudentList)


0 commentaires