Comment voulez-vous créer une liste vide de n-uplets?
Je suis en train de créer une nouvelle liste vide qui contiendra les tuples lors de l'appel de l'étendre. Voici où j'ai déclarer la liste:
ticketData = list()
Et j'ai une boucle dans une autre liste pour ajouter des tuples à cette liste:
data = (0, requestor, subject, thetime)
ticketData.extend(data)
Quand je l'ai sortie le résultat montre ceci:
[0, 'Name', 'Test Subject', '03:31:12']
J'ai besoin d'elle pour être une liste de tuples, et pas seulement une liste, de sorte que je peux utiliser sqlite est executemany fonction.
Il semble simple, mais je n'ai pas été en mesure de trouver une réponse ici. Merci!
extend
ajoute tous les éléments de son argumentation.append
ajoute juste un seul élément. Si vous souhaitez utiliserextend
, vous pourriezticketData.extend([data])
, mais il est plus facile de simplement utiliserappend
.
Vous devez vous connecter pour publier un commentaire.
Viens de l'ajouter à la liste, de sorte que le tuple sera ajoutée au lieu d'avoir les éléments du tuple étendre la liste.
va ajouter
data
à la listeticketData
Bien que cette question a déjà répondu, j'ai pensé qu'il pourrait être utile de savoir sur la façon de construire un objet iterable que doit contenir un vide itératif.
En Python, les constructeurs comme liste(), set(), tuple (), etc. prendre un objet iterable comme entrée. Par conséquent, ils itérer l'itérable et quelque chose comme la liste(tuple()) ne pas renvoyer une liste vide de n-uplet. Au lieu de la liste constructeur parcourt les n-uplets, et depuis, il n'a pas d'éléments, il en résulte une liste vide.
De construire une liste qui contient un tuple vide procédez de la manière suivante:
Au lieu de
my_list = list(tuple()) //returns [] or list()
Faire:
my_list = [tuple()]
Ou:
my_list = list([tuple()]) //constructor iterates through the list containing the empty tuple
De la même façon, si vous voulez faire un set contenant un tuple vide procédez de la manière suivante:
Au lieu de
my_set = set(tuple()) //returns set()
Faire:
my_set = {tuple()}
Ou:
my_set = set([tuple()]) //constructor iterates through the list, containing the empty tuple
Cela s'applique également à d'autres iterables. Je suis en train d'écrire cela, car j'ai moi-même eu des problèmes à l'aide de ces constructeurs à retourner, par exemple une liste contenant un autre vide itératif.