Jump to content

[Algorithmique en prépa] Python et Xcode


Ewilan
 Share

Recommended Posts

Bonjour à tous,

Peut-être le savez-vous déjà, mais je suis en prépa. Et, il y a une chose que certains d'entre vous savent, et que d'autres ne savent pas (j'aimerais que ceux qui la savent lèvent le doigt...*) : en prépa, on fait un peu d'info en python. Récemment, j'ai commencé à en avoir ras le bol de l'éditeur intégré (bugs d'indentation, pas moyen de copier-coller quelques lignes sans bousiller toutes les boucles...), et je me suis dit que vu que Xcode est intégré à tous les macs, je pouvais utiliser ce programme. J'ai un peu bataillé pour créer un projet en Python dedans, mais j'ai finalement réussi. Et y a pas à dire, Xcode est beaucoup plus pratique !

J'en viens à mon "problème" : dans IDLE, on pouvait tester ses fonctions dans le shell, lancer un programme pour des valeurs spécifiques pour voir si ça marche... Et vu qu'on n'y connait pas grand chose, c'est en effet pratique. Mais Xcode n'a pas (l'air d'avoir ?) cette fonction. Bon, du coup, je m'en sors avec des "print" à la fin de mes lignes de code, pour tester, mais c'est vrai que le shell me manque parfois... 

Y a-t-il un moyen d'avoir une sorte de shell sur Xcode ? Ou alors la possibilité d'ouvrir le fichier dans un shell externe (à savoir celui d'IDLE) ?

 

Merci d'avance.

 

Edit : petite précision... Quand je dis qu'on code un peu, en prépa, c'est de l'ordre (pour le moment ?) de "codez une fonction python qui trouve les 10 000 premiers entiers avec le crible d'Eratosthème, vous avez une demi heure, démerdez vous je vais boire un café...". Ça et de l'algorithmique pure. Tout ça pour dire que je n'y connais presque rien. Voilàvoilàààà ! ;)

 

*pour ceux qui n'auraient pas reconnu : Hirondelles de Saucisson, de François Rollin !

Link to comment
Share on other sites

Des copier coller qui foutent la merde dans tes boucles? Ce serait pas ton copié collé qui serait merdique par hasard? Parce que RAS chez moi quand je le fais. Idem pour les bugs d'indentation.

Ceci dit, quand je "pythone", je le fais avec ma VM Linux, j'ai jamais réussi à faire marché matplotlib et numpy sur mac

Link to comment
Share on other sites

Des copier coller qui foutent la merde dans tes boucles? Ce serait pas ton copié collé qui serait merdique par hasard? Parce que RAS chez moi quand je le fais. Idem pour les bugs d'indentation.

Ceci dit, quand je "pythone", je le fais avec ma VM Linux, j'ai jamais réussi à faire marché matplotlib et numpy sur mac

Matplotlib doit avoir la bonne version de python : 2.7.8. Je le sais, c'est moi qui l'ai installé sur tous les macs de la classe... :P

En fait, il n'y a pas moyen de copier quelque chose qui se trouve à la base hors d'une boucle à l'intérieur d'une boucle.

Exemple : 

EBlsKveKgXS_capture_d_ecran_2015-02-11_a

Si je veux copier / déplacer le n=m[-1] dans le for, à chaque fois dans IDLE, il me le met au mauvais endroit (soit il supprime carrément l'indentation, soit il me le fout trop loin ...)

 

Et les bugs, c'est de l'ordre de "un coup l'indentation c'est des Tab, un coup des espaces, un coup un mélange des deux, et on passe son temps à essayer de replacer cette p***** de ligne au bon endroit...

Link to comment
Share on other sites

Pourtant, en python 3.4.2 sur Ubuntu x64, ça marche...

 

J'utilise la dernière version de python, et matplotlib, je l'ai installé via le store linux.

Ah. C'est donc la version Mac de Python qui déconne... On se croirait avec Regressi * !!!

Moi quand je fais ça, il me colle toujours l'indentation à gauche de ce que je sélectionne à ce que je copie (même si elle n'est pas sélectionnée !)

 

*petit programme utile, dont la version Mac n'a pas été développée correctement. Il manque des fonctions de partout, ça fait vraiment histoire de dire qu'il y a une version Mac, parce que ça fait bien sur le site web...

Link to comment
Share on other sites

J'utilisais spyder, mais je ne sais pas si c'est vraiment mieux... et ça ne répond pas vraiment à la question, mais bon, au cas ou...

Je le testerai peut-être quand j'aurai le temps. Merci :)

 

Télécharger et utiliser Xcode juste pour avoir un bon éditeur, ce n'est pas un peu overkill ?? Et il existe sur OS X des éditeurs tiers plus que bien. TextWrangler par exemple.

Il est pas fourni avec tous les Macs, de série ?

Link to comment
Share on other sites

En récursif, l'algorithme renvoyant le terme de rang n de la suite de Fibonacci est capable de mettre à genoux une machine (la complexité est exponentielle!). Nos ordis au lycée sous Linux ont tenu 20 minutes (on avait demandé un n de l'ordre de la centaine de mille)

Link to comment
Share on other sites

En récursif, l'algorithme renvoyant le terme de rang n de la suite de Fibonacci est capable de mettre à genoux une machine (la complexité est exponentielle!). Nos ordis au lycée sous Linux ont tenu 20 (on avait demandé un n de l'ordre de la centaine de mille)

Bah je vais pas essayer sur le macbook alors ! Par contre, sur le Tube que j'ai chez moi... faut voir ! ;)

Link to comment
Share on other sites

En récursif, l'algorithme renvoyant le terme de rang n de la suite de Fibonacci est capable de mettre à genoux une machine (la complexité est exponentielle!). Nos ordis au lycée sous Linux ont tenu 20 minutes (on avait demandé un n de l'ordre de la centaine de mille)

Bon ben finalement, j'ai testé. Et y a une limite au récursif de python... Déjà, fibonacci(1000) ne passe pas. Dommage, j'aime bien utiliser le Macbook comme radiateur ! ;)

Link to comment
Share on other sites

Ah. C'est donc la version Mac de Python qui déconne... On se croirait avec Regressi * !!!

Moi quand je fais ça, il me colle toujours l'indentation à gauche de ce que je sélectionne à ce que je copie (même si elle n'est pas sélectionnée !)

Je viens d'essayer sur mon Mac, et ça marche très bien aussi.

 

 

 

 

Télécharger et utiliser Xcode juste pour avoir un bon éditeur, ce n'est pas un peu overkill ?? Et il existe sur OS X des éditeurs tiers plus que bien. TextWrangler par exemple.

Il est pas fourni avec tous les Macs, de série ?

 

Il n'est pas installé par défaut, en principe. Il y a peut-être une icône, mais qui provoque l'installation à la première utilisation.

 

Mais la question n'est pas là : pour faire du python il n'y a besoin de rien d'autre que l'exécutable en ligne de commande "python" et d'un éditeur de texte (on choisit celui que l'on veut). IDLE ou Xcode sont des environnements de développement intégrés qui ne sont pas indispensables.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...