web-dev-qa-db-fra.com

Plage d'impression de nombres sur la même ligne

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
12
kyle k
for x in xrange(1, 10):
    print x,
17
blakev
>>>print(*range(1,11)) 
1 2 3 4 5 6 7 8 9 10

Une doublure en python pour imprimer la gamme

26
voidpro

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 
7
ersran9
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

7
Anubhav

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
>>>
1
subhash kumar singh
for i in range(1,11):
    print(i)

je sais que c'est une vieille question, mais je pense que cela fonctionne maintenant

0
bre
[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

0
Akash Seth

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 = "")

0
Prashant Mani

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 = ' ')
0
Rajnish Gaur