[GO] Environnement mineur Python Retsuden-Combien d'environnements Python connaissez-vous? ~

Qu'est-ce qu'un environnement mineur Python?

Quand je parlais de Python dans l'entreprise, je parlais de quelque chose comme "Il y a beaucoup d'environnements Python, non?" Et en disant légèrement quelque chose comme "Oui, c'est vrai", mais étonnamment. Il y a quelques pages qui résument cet "environnement mineur", j'ai donc essayé de résumer l'environnement d'exécution Python pour autant que je sache. Voici quelques mises en garde.

--Permet pas parfait comme Python

Je vais parler avec une reliure lâche. Un environnement Python aussi mineur ne fonctionne souvent pas même avec un Python précis. Ou vous vous demandez peut-être "Qu'est-ce que Python?" Lorsque Python est converti dans un autre langage. Nous gérons également les choses qui "donnent l'impression que Python fonctionne". Cependant, j'espère que vous pouvez le voir, en pensant que c'est aussi la taille de la jupe de Python (chose comme l'espace CQC).

CPython

image.png

https://www.python.org/ Nombre d'articles concernant Qiita: 11075

Ce n'est pas du tout un environnement mineur, et c'est complètement la maison d'origine, donc je ne pense pas qu'il soit nécessaire d'expliquer, mais le premier que je vais vous présenter est officiel. S'il vous plaît, pardonnez-moi. Pour le moment, ce qu'on appelle "Python" fait généralement référence à ce CPython. C'est très courant, et vous pouvez être sûr qu'il arrivera si vous installez Python normalement.

Jython

image.png

http://www.jython.org/ Nombre d'articles sur Qiita: 56

Oui. Python écrit en Java. Il fonctionne sur la JVM. C'est parce que l'interpréteur Python est construit en Java, vous pouvez donc l'exécuter sous la forme de jython filename.py. C'est un peu spongieux, mais quand je l'essaye, c'est étonnamment amusant. Comme vous pouvez utiliser des bibliothèques Java de base et des bibliothèques d'interface graphique telles que Swing et AWT, vous pouvez organiser dynamiquement les boutons sur l'interpréteur de l'environnement interactif de Python. Tout à fait. Il peut se comporter de manière étrange. Étonnamment, le développement semble progresser et il prend en charge Python 2.7.

IronPython

image.png

http://ironpython.net/ Articles de Qiita: 31

Python qui s'exécute sur Windows, environnement Mono et .Net Framework. Il semble qu'il soit implémenté en C #. J'ai essayé de le toucher il y a longtemps, et maintenant je peux utiliser IronPython dans Visual Studio! Il y avait une histoire comme celle-ci, mais comme cela ne pouvait être fait qu'avec Visual Studio payant, il peut s'agir d'un environnement d'exécution Python auquel vous ne touchez pas après tout. Il existe depuis un certain temps, et c'est à peu près à l'époque où un produit compatible de .Net Framework appelé Mono est sorti, donc je pense que c'était un système de traitement relativement ancien.

Unladen Swallow

image.png

https://code.google.com/archive/p/unladen-swallow/ Articles de Qiita: 5

Personnellement, j'ai lu "Anladen Swaro" **. Vers 2010, il y avait une histoire comme "Rendons Python plus rapide!", Et c'est le système d'implémentation de Python qui est sorti à ce moment-là. En regardant maintenant, c'était une tentative agressive de compiler JIT en utilisant LLVM comme back-end. Le développement s'est arrêté sans être incorporé dans le Python original ... Je ne savais pas grand-chose à ce sujet, mais je l'ai introduit car il y avait un matériel de lecture intéressant.

Rétrospective de l'hirondelle sans charge

Stackless Python(Stackless)

image.png

https://bitbucket.org/stackless-dev/stackless/wiki/Home Nombre d'articles dans Qiita: 2

C'est une implémentation Python que j'ai rarement utilisée (décrite plus tard), mais je la vois à divers endroits. La caractéristique est que la pile ne dépend pas de la pile d'appels en langage C, mais je n'ai pas reçu beaucoup d'avantages. Il est rare d'avoir un service avec bitbucket. De plus, il semble que le développement soit toujours en cours.

Portable Python

image.png

http://portablepython.com/ Nombre d'articles dans Qiita: 1

Il s'appelle Adabana né de l'époque, et c'est Python que j'ai personnellement trouvé utile. Ce qui est pratique, c'est que Python fonctionne simplement en plaçant un répertoire dans la mémoire USB, et aucun environnement Internet n'est requis. Normalement, Python nécessite de définir des variables d'environnement et de les installer sur le PC hôte, mais comme l'environnement de développement peut être transporté tel quel, il était bon de pouvoir écrire Python n'importe où. Cependant, maintenant que j'ai un environnement où je peux écrire du Python simple sur le Web tel que ideone, je n'en ai plus besoin. Peut-être à cause de cela, Portable Python lui-même est également fermé? Il ressemble à ... Je pense que ce backend était Python sans pile.

Comme vous pouvez le voir sur la page de téléchargement,

http://portablepython.com/wiki/PortablePython2.7.6.1/

C'était aussi pratique qu'il y ait une bibliothèque qui pourrait être utilisée un peu simplement en téléchargeant une.

pypy

image.png

http://pypy.org/ Articles de Qiita: 82

Environnement d'exécution de python réalisé avec python. Il y avait une bibliothèque jit pour python appelée psyco, mais elle en est le successeur. Dans le passé, j'introduisais psyco et pypy afin de maximiser la vitesse, mais à ce moment-là, j'ai arrêté parce que les ctypes ne pouvaient pas être utilisés. De nos jours, je ne veux pas de vitesse, et parfois j'utilise une bibliothèque d'apprentissage automatique qui est nativement étendue par C, donc il n'y a pas beaucoup de mérite à l'introduire, donc je ne l'utilise toujours pas ...

PyMite(python-on-a-chip)

image.png

https://github.com/dwhall/p14p Nombre d'articles dans Qiita: ** 0 **

J'ai entendu des rumeurs selon lesquelles c'était un système d'implémentation Python dans une certaine mesure, et c'était une histoire sur la légende de la ville selon laquelle "il y a Python qui fonctionne sur AVR", alors je l'ai étudié. Il semble que cela fonctionne réellement, mais cela semble être assez vieux ... je ne l'ai jamais déplacé, et je pense qu'Arduino est mieux que de toucher AVR en direct, donc je ne le toucherai pas à l'avenir pense···

tinypy

image.png

https://github.com/philhassey/tinypy/tree/master Nombre d'articles dans Qiita: ** 0 **

Je n'en sais rien. Je l'ai su pour la première fois en regardant la liste des implémentations python sur wikipedia. Dans l'explication de wikipedia, il est dit que c'est pour l'intégration, mais cela semble être une erreur. En gros, cela semble être un système de traitement avec py2exe et une fonction pour minimiser la taille binaire.Dans l'exemple, celui utilisant pygame est présenté, et le jeu fait avec pygame est construit pour qu'il devienne un binaire de 64k ou moins. Il semble. C'est un mineur, mais je me souviens de tcc (petit compilateur c) ...

Brython

image.png

http://www.brython.info/ Nombre d'articles dans Qiita: 7

Implémentation Python par Javascript que je pense personnellement est un représentant du système Tochikuru Python. Python qui s'exécute sur un navigateur. Je pense que c'est fou, mais si vous regardez le code officiel ci-dessous, vous pouvez voir à quel point c'est fou.


<html>
<head>
<script src="/brython.js"></script>
</head>
<body onload="brython()">
<script type="text/python">
from browser import document, alert

def echo(ev):
    alert(document["zone"].value)

document['mybutton'].bind('click',echo)
</script>
<input id="zone"><button id="mybutton">click !</button>
</body>
</html>

** Je ne suis pas traducteur. Python fonctionne vraiment dans le navigateur et vous pouvez réellement l'écrire en direct. ** ** De plus, cela me met en colère quand je bouge plus que prévu. Au lieu de cela, le mouvement est léger. Évidemment, c'est lent.

Grumpy image.png

https://github.com/google/grumpy Nombre d'articles dans Qiita: 9

Il n'est pas exagéré de dire qu'il s'agit d'un transpilateur Python mineur que Google fabrique. Le code est converti de Python à Go, et vous pouvez le construire! Le substitut. En fait, c'est tout à fait une chose de couleur que vous pouvez également utiliser la bibliothèque Go de Python. J'ai déjà évalué la vitesse avec Go, Python et Grumpy, alors consultez également cet article.

Go, Python et Grumpy speed benchmarks - À quelle vitesse le transpilateur de Google est-il rapide? ~

Pythonista image.png

http://omz-software.com/pythonista/ Articles de Qiita: 113

Environnement d'exécution Python qui s'exécute sur iOS. Comme je l'ai récemment appris, il semble que non seulement Python peut être écrit avec une application iPhone, mais que le script peut être généré en tant qu'application autonome. Il y a des frais, mais c'est 9,99 $, donc ce n'est pas cher. Un plat que vous avez envie de toucher un peu.

Scripting Layer for Android (SL4A) image.png

https://github.com/damonkohler/sl4a Nombre d'articles dans Qiita: 3

Environnement Python sur Android. Le développement semble s'être arrêté maintenant. Il y a longtemps, je détestais écrire Java et je voulais écrire des applications en Python. Celui que j'ai regardé en pensant. Il y a longtemps, la bobine du chargeur iPhone était si mauvaise que mon smartphone semblait haletant. Il y a une vidéo comme celle-ci, et je veux aussi haletant mon smartphone! J'ai pensé, j'ai créé une application.

[Mon Android] J'ai créé une application qui rend mon smartphone haletant lorsque je le charge [J'ai haleté]

Cette application a été construite en Python avec SL4A. SL4A est difficile de toucher l'interface utilisateur native, seul WebView est touché, mais la valeur du capteur d'accélération, etc. était relativement facile à obtenir, alors je l'ai fait avec cela.

kivy image.png

https://kivy.org/#home Nombre d'articles dans Qiita: 92

La couleur des cheveux est un peu différente, mais je vais vous présenter Kivy car c'est une bibliothèque utilisant Python. Il y a longtemps, je voulais faire quelque chose comme un clavier multi-touch sous Windows 8.

Multitouch Music Board on Windows 8

À cette époque, il y avait peu de bibliothèques Python qui pouvaient prendre le multi-touch, et il n'y avait que des options Kivy. Donc, Kivy et bibliothèque MIDI. Et la vidéo ci-dessus a été réalisée avec un synthétiseur logiciel. La raison pour laquelle nous prenons l'environnement ici est qu'il s'agit d'un environnement très puissant qui peut générer Linux, Windows, Mac, RasPi, Android, iOS avec un seul code. (On l'appelle un environnement dans le sens où il est intégré à l'application de sortie.)

Ren'Py

image.png

https://www.renpy.org/ Nombre d'articles dans Qiita: 2

Il s'agit d'un moteur de roman visuel qui peut être écrit en Python. Vous pouvez écrire presque le même code que Python, mais c'est une implémentation assez intéressante avec l'ajout d'une syntaxe étendue optimisée pour les romans visuels. Il semble que cela puisse être produit sur Linux, Windows, Mac, Android, iOS, Chrome OS avec un sentiment similaire.

Il y a longtemps

Je veux devenir un pain vapeur au fromage!

J'ai fait un roman sonore de bouse pour Android et je l'ai utilisé là-bas. C'est vraiment un roman sonore. Parce qu'il n'y a pas d'image (je ne pouvais pas dessiner).

Shed Skin image.png

https://shedskin.github.io/ Nombre d'articles dans Qiita: ** 0 **

C'est une catégorie assez dominante. Un transpilateur qui convertit Python en C ++. J'avais l'habitude de l'utiliser il y a longtemps, mais je me souviens de l'avoir lancé parce que je ne pouvais pas du tout le transpiler. Il ne sera plus maintenu. J'ai pensé, mais il semble qu'il est toujours maintenu. Suge

StacklessPSP

image.png

https://code.google.com/archive/p/pspstacklesspython/downloads Nombre d'articles dans Qiita: ** 0 **

Un système d'implémentation Python que j'aime personnellement. Un binaire Python qui fonctionne sur PSP (Playstaton Portable). C'était une implémentation très excitante pour une PSP modifiée à l'époque. Cependant, je ne l'ai pas beaucoup utilisé. C'est vraiment ennuyeux à utiliser, n'est-ce pas? Je veux juste bouger un peu

  1. Connectez la PSP au PC via USB
  2. Mettez la source
  3. Déconnectez la PSP du PC
  4. Lancez Stackless PSP

Je faisais quelque chose comme ça, mais comme cela prend du temps, je l'ai jeté en chemin.

pyNES image.png

https://gutomaia.net/pyNES/ Nombre d'articles dans Qiita: ** 0 **

Faisons un jeu Famicom avec Python. C'est une tentative. Est-il correct de mettre cela dans le système de traitement Python ...? J'ai pensé, mais je vais le présenter parce que c'est intéressant. Python ne fonctionne pas vraiment sur Famicom, mais il existe des fonctions adaptées à l'écriture de jeux Famicom. Est correct.

Résumé

La plate-forme de l'environnement de développement et l'environnement d'exécution sont différents (peuvent être modifiés)

Implémentation de Python autre que CPython

Autre que le langage C

Langage C

Système Transpiler (de Python vers un autre langage)

Autre

À la fin

Il n'y a pas une telle chose! Je n'ai pas ça! Je pense qu'il y a aussi des choses comme. Anaconda! ?? Jupyter! ?? Comme. Fondamentalement, l'implémentation de CPython est omise et celles qui ont d'autres caractéristiques sont réduites. Il extrait également l'environnement CPython intégré. Par exemple, Blender, Maya, Metasequoia. Si vous commencez à le mettre si loin, ce sera assez difficile.

Je l'ai vérifié plus tôt, mais il y a d'autres personnes qui étudient un environnement Python aussi mineur.

[Pouvez-vous dire que? Nom Python ~](http://qiita.com/doloop while/items/d7f991f5e44163dba2a9)

Lisez cet article,

** "Je veux le faire!" "Je l'appellerai avec Python" ** ** "Je veux faire AVR!" "Je l'appellerai avec Python" ** ** "Je veux faire une interface Web!" "Je l'appellerai avec Python" ** ** "Je veux créer une application pour smartphone!" "Je l'appellerai avec Python" **

Vous pourrez jeter une putain de lèvre. Je pense que cet article couvre tout, du plus faible au plus fort dans le monde mineur de l'environnement d'exécution Python, alors dites-moi s'il existe un autre environnement d'exécution Python émotionnel. Je marcherai sur la mine terrestre. Je vous remercie!

Recommended Posts

Environnement mineur Python Retsuden-Combien d'environnements Python connaissez-vous? ~
Combien connaissez-vous les bases de Python?
Python | Ce que vous pouvez faire avec Python
Combien de types de Python avez-vous dans votre Windows 10? J'avais 5 types.
Combien de types de Python avez-vous dans votre macOS? J'avais 401 types.
Vous devez savoir si vous utilisez Python! 10 bibliothèques utiles