2017-10-08 1 views
-1

pour la plupart de ma programmation en tant que débutant J'ai utilisé un site appelé grok learning. Sur ce site, il y a un interpréteur python (?) Je ne suis pas sûr du mot technique, mais vous pouvez exécuter des programmes python avec des modules dans le site.Texte sublime entraînant l'impression de l'instruction print() pour imprimer les parenthèses et les guillemets

Aujourd'hui, j'ai téléchargé du texte sublime parce que l'espace sur Grok Learning n'était pas aussi grand que nécessaire, et je ne pouvais pas enregistrer les programmes sur mon ordinateur.

J'ai copié et collé une partie de mon code de Grok vers du texte sublime, et pour une raison quelconque, j'ai ce problème.

Sur grok, ce programme:

world_age = random.randint(2, 5000) 

print('The world is', world_age, 'years old.') 

renvoie cette:

The world is 2500 years old. 

Cependant, dans le texte sublime, je reçois:

('The world is', 3068, 'years old.') 

avec support et tous. J'utilise python 3, pas 2, donc je sais que les parenthèses doivent être là. Autres notes:

  • J'utilise Mac OS X

  • Pour exécuter le programme, je l'ai téléchargé python 3.6.3 de python.org pour mac

  • Je sauve le fichier texte sublime Formulaire .py dans mon propre dossier, et pour l'exécuter je fais un clic droit sur le fichier et choisissez ouvrir avec Python Launcher. Si je choisis d'ouvrir avec "IDLE" alors le programme ne fonctionne pas réellement, le programme s'ouvre juste en python.

+1

Le texte sublime exécute votre code dans Python 2. Ou plutôt, quel que soit * Python Launcher * est; faites-vous un clic droit dans * Sublime * ou dans * Finder *? –

+1

Ah, je vois que le programme d'installation d'OS X comprend une application 'PythonLauncher', et il est configurable: * PythonLauncher a diverses préférences pour contrôler le lancement de votre script. Option-glisser vous permet de les modifier pour une invocation, ou d'utiliser son menu Préférences pour changer les choses globalement. *. Vraisemblablement, il est actuellement configuré pour exécuter Python 2.7 par défaut. –

+1

Essayez d'ouvrir l'application Python Launcher (située dans votre dossier 'Applications' et en regardant son panneau de préférences.Il a probablement une option pour définir quel binaire Python est utilisé –

Répondre

3

Ce n'est pas la faute de Sublime. Vous exécutez votre script Python avec Python Launcher, et il est configuré pour exécuter Python 2. Votre code fonctionne avec Python 2, mais l'instruction print reçoit un tuple à imprimer.

Ouvrez le Lanceur Python directement (use Spotlight to find it) et vous pouvez ajuster le binaire Python qu'il utilise pour exécuter votre script. Lorsque vous le lancez, le volet des préférences s'ouvre automatiquement. Vous pouvez définir l'option interpreter sur le chemin de l'interpréteur Python 3 à la place.