Vous ne devriez pas vous soucier des différences entre ints et désire ardemment. Si vous essayez d'imprimer longtemps, le L disparaîtra.
nums = [1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L]
>>> for num in nums:
... print num,
1 1 1 2 2 2 3 3
En outre, pourquoi souhaitez-vous que votre liste de résultats comporte des chaînes? Vous devriez les garder en chiffres jusqu'au moment où vous voulez les imprimer. Ensuite, vous pouvez les convertir en chaînes en utilisant la mise en forme de chaîne (qui est plus souple aussi. Surtout si vous commencez à traiter avec virgule flottante ou des nombres décimaux.
>>> print "Your number is: %d" % 1L
Your number is 1
>>> print "If we're talking money, you might want $%.2f" % 2L
If we're talking money, you might want $2.00
Tout fonctionne comme prévu. Le L ne montre que . dans le repr
de long, vous savez que vous travaillez avec languit au lieu de ints
Pour les faire sortir de leurs tuples, vous pouvez faire:
>>> nums = [(1L,), (1L,), (2L,), (3L,)]
>>> nums = [x[0] for x in nums]
qui copie votre liste à un nouvelle liste, ou vous pouvez faire:
>>> for i, num in enumerate(nums):
... nums[i] = num
>>> for i in xrange(nums):
... nums[i] = int(nums[i])
Qui va modifier votre liste d'origine plutôt que d'en créer une nouvelle. Dans les deux cas, nums contiendra une liste de longs.
Merci beaucoup :) – Yasmin
Vous voulez probablement aussi savoir comment Emil l'a fait;) C'est une jolie fonctionnalité python appelée liste compréhensions: http://docs.python.org/tutorial/datastructures.html#list- les compréhensions – c089