Quelle est la meilleure façon de faire de la programmation en Python lire et écrire sur Windows? [fermé]

StackOverflow https://stackoverflow.com/questions/1267280

Question

Je joue avec différentes façons de faire lire et écrire la programmation en Python. J'aime noweb , mais j'ai deux problèmes principaux: tout d'abord, il est dur pour construire sur Windows, où je passe environ la moitié de mon temps de développement; et deuxièmement, il me demande de retrait de chaque morceau de code tel qu'il sera dans le programme final --- que je ne sais pas nécessairement quand je l'écris. Je ne veux pas utiliser Leo, parce que je suis très attaché à Emacs.

Y at-il un bon outil de programmation lettrée:

  1. Fonctionne sous Windows
  2. me permet de définir l'indentation des morceaux quand ils sont utilisés, pas quand ils sont écrits
  3. me laisse toujours travailler dans Emacs

Merci!


Correction: noweb Finalité permettez-moi indenter plus tard --- j'ai mal lu le document que j'ai trouvé là-dessus.

  
    
      

Par défaut, notangle conserve les espaces et maintient en retrait lors de l'expansion des morceaux. Il peut donc être utilisé avec des langages comme Miranda et Haskell, dans lequel indentation est significative

    
  

Il ne me reste que le problème "Fonctionne sous Windows".

Était-ce utile?

La solution

Je l'ai fait:

http://sourceforge.net/projects/pywebtool/

Vous pouvez obtenir un certain nombre de produits web / tissage qui vous aideront à construire un document et le code d'un seul.

Vous pouvez - assez facilement - écrire votre propre. Ce n'est pas la science de fusée pour tirer sur le blocs de code Python de la source RST et l'assembler. En effet, je vous suggère d'écrire vos propres directives docutils pour assembler le code Python à partir d'un document source RST.

Vous exécutez la TVD par docutils rst2html (ou Sphinx) pour produire votre rapport HTML final.

Vous exécutez votre propre utilitaire sur la même source RST pour extraire les blocs de code Python et produire les modules finaux.

Autres conseils

Je l'ai écrit Pweave http://mpastell.com/pweave , qui vise à la création de rapports dynamiques et utilise la syntaxe noweb. Il est un pur script python pour qu'il fonctionne également sous Windows. Il ne résout pas votre problème de retrait, mais peut-être vous pouvez le modifier pour cela, le code est vraiment très simple.

La norme de facto dans la communauté est ipython ordinateurs portables.

Excellent exemple où Peter Norvig montre des algorithmes pour résoudre le problème VRP: http: // nbviewer.ipython.org/url/norvig.com/ipython/TSPv3.ipynb

D'autres exemples énumérés à https://github.com/ipython/ipython / wiki / A-galerie-de-intéressants ipython-Notebooks

Vous pouvez utiliser en mode org et babel enchevêtrement.

Cela fonctionne très bien, puisque vous pouvez donner. Noweb-ref blocs source

Voici un exemple minimal: Activer org-babel-enchevêtrement , puis mettre cela dans le fichier noweb-test.org:

#+begin_src python :exports none :noweb-ref c
abc = "abc"
#+end_src

#+begin_src python :noweb yes :tangle noweb-test.py
def x():
  <<c>>
  return abc

print(x())
#+end_src

Vous pouvez également utiliser les propriétés de titres pour donner la noweb-ref. Il peut alors concaténer même automatiquement plusieurs blocs source dans une référence noweb.

Ajouter :results output à la ligne de #+begin_src du deuxième bloc pour voir les résultats d'impression sous ce bloc lorsque vous appuyez sur C-c C-c dans le bloc.

Vous pouvez trouver noweb 3 plus facile de construire sur Windows. Il a été conçu pour être plus portable que noweb standard.

Voir aussi mon dernier outil LP: http://code.google.com/p/nano -lp. Il ne nécessite format d'entrée spécial, prend en charge Markdown / multimarkdown, reStructuredText, OpenOffice / LibreOffice, créole, TeX / LaTeX et a super léger et propre syntaxe -. Pas plus énigmatiques programmes alphabétisés

Nous avons trouvé cet outil utile: https://github.com/bslatkin/pyliterate

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top