En utilisant python, je veux imprimer une plage de nombres sur la même ligne. comment puis-je faire cela en utilisant python, je peux le faire en C sans ajouter \n
, mais comment puis-je le faire en python.
for x in xrange(1,10):
print x
J'essaie d'obtenir ce résultat.
1 2 3 4 5 6 7 8 9 10
for x in xrange(1, 10):
print x,
>>>print(*range(1,11))
1 2 3 4 5 6 7 8 9 10
Une doublure en python pour imprimer la gamme
str.join
serait approprié dans ce cas
>>> print ' '.join(str(x) for x in xrange(1,11))
1 2 3 4 5 6 7 8 9 10
for i in range(10):
print(i, end = ' ')
Vous pouvez fournir n'importe quel délimiteur au champ final (espace, virgule, etc.)
Ceci est pour Python 3
La même chose peut être obtenue en utilisant stdout
.
>>> from sys import stdout
>>> for i in range(1,11):
... stdout.write(str(i)+' ')
...
1 2 3 4 5 6 7 8 9 10
On peut également faire la même chose en utilisant reduce()
:
>>> xrange = range(1,11)
>>> print reduce(lambda x, y: str(x) + ' '+str(y), xrange)
1 2 3 4 5 6 7 8 9 10
>>>
for i in range(1,11):
print(i)
je sais que c'est une vieille question, mais je pense que cela fonctionne maintenant
[print(i, end = ' ') for i in range(10)]
0 1 2 3 4 5 6 7 8 9
Ceci est une méthode de compréhension de liste de réponse identique à @Anubhav
Bien que la réponse ait été donnée à la question. Je voudrais ajouter, si dans le cas où nous avons besoin d’imprimer des nombres sans espaces, nous pouvons utiliser le code suivant pour i dans la plage (1, n): print (i, end = "")
C'est une vieille question, xrange
n'est pas supporté en Python3.
Tu peux essayer -
print(*range(1,11))
OR
for i in range(10):
print(i, end = ' ')