2017-06-06 14 views
-5

J'essaie d'apprendre python, alors j'ai téléchargé aptanaStudio3 et ce arrive.Impression tuple au lieu de trois chaînes

code:

print('One', 'Two', 'Three') 

Sortie:

('One', 'Two', 'Three') 

il faut imprimer juste

One Two Three 
+1

votre code actuel est l'impression d'un tuple de trois éléments – chatton

+2

Êtes-vous sûr que vous avez téléchargé python3? –

+4

Vous utilisez la syntaxe Python 3 sur Python 2. Obtenez Python 3. – user2357112

Répondre

1

Python 2 a print comme une commande, donc tout ce dont vous avez besoin est

print 'One', 'Two', 'Three' 

En Python 3, print est une fonction, de sorte que les parenthèses sont nécessaires pour l'appel. Dans la plupart des contextes, la série de valeurs entre parenthèses est tuple; Ceci est juste comme un list, sauf que vous ne pouvez pas changer les éléments individuels (c'est-à-dire qu'un tuple est immutable).

2

'One', 'Two', 'Three' est un tuple. Vous devez faire 'One' + 'Two' + 'Three', ou vous pouvez simplement le garder dans une chaîne comme One Two Three, de sorte que vous imprimez une chaîne.

Un tuple est un groupe de chaînes, et vous avez juste besoin d'imprimer une seule chaîne. Vous avez probablement tapé , qui définit un tuple, au lieu de +, dont concatenates. Assurez-vous que vous utilisez print("") pour Python 3 et print "" pour Python 2.

Lire this et this pour en savoir plus.

0

Si vous voulez que la fonction d'impression de style python3 dans python2, vous pouvez utiliser les éléments suivants:

>>> from __future__ import print_function 
>>> print('One', 'Two', 'Three', sep=' ') 
One Two Three 

Le mot-clé sep est le séparateur utilisé entre les arguments et par défaut ' '.

En faisant cela, vous pouvez écrire print code correspondant qui fonctionnera à la fois python 2 et 3.