Comment faire pour activer tous les numéros dans une liste de leurs homologues négatives?
J'essaie de transformer une liste de nombres positifs dans une liste de nombres négatifs avec la même valeur en python 3.3.3
Par exemple en tournant [1,2,3]
en [-1,-2,-3]
J'ai ce code:
xamount=int(input("How much of x is there"))
integeramount=int(input("How much of the integer is there"))
a=1
lista=[]
while(a<=integeramount):
if(integeramount%a==0):
lista.extend([a])
a=a+1
listb=lista
print(listb)
[ -x for x in listb]
print(listb)
Cette affiche deux listes identiques quand je veux une positive et une négative.
Ne
listb = [ -x for x in lista ]
comme je l'ai suggéré dans ma réponse.OriginalL'auteur SamRob85 | 2014-09-25
Vous devez vous connecter pour publier un commentaire.
La façon la plus naturelle est d'utiliser une liste de compréhension:
Donne
Vous êtes dans l'erreur. Tout ce qui fonctionne dans le shell fonctionne "dans le code". Si vous avez quelque chose qui ne fonctionne pas et ont besoin d'aide, vous avez besoin de poster le code qui montre ce que vous essayez de faire.
Ne mettez pas la
>>>
pour le code. Sinon, ça doit marcher aussi avec, éventuellement, la plus ancienne Python que vous pouvez trouver. Le seul problème pourrait être que il crée la nouvelle liste. Il ne permet pas de modifier l'existant.Merci @pepr c'était le problème
OK, j'ai enlevé le
>>>
.OriginalL'auteur Anton
Vous pouvez utiliser le numpy paquet et ne numpy.négatif ( -)
OriginalL'auteur XTZ
Si vous souhaitez modifier une liste à la place:
OriginalL'auteur Terry Jan Reedy
Il y a aussi cette méthode:
Petite remarque, cela ne fonctionne que si tous les numéros de départ positif. Il n'affecte pas le 0. Si vous avez des nombres négatifs vous ne voulez pas changer, vous devez ajouter les SI la déclaration ci-dessous.
OriginalL'auteur Chris Cochrane
Pour grande liste, vous aurez probablement une meilleure utilisation
numpy
OriginalL'auteur Rémi Baudoux