Python est le principal langage de programmation dont la croissance est la plus rapide. Il s'agit de la langue la plus demandée pour la troisième année consécutive, ce qui signifie que les développeurs qui ne l'utilisent pas encore disent vouloir l'apprendre. [1]
La popularité de Python tient à ses nombreuses versions. [citation nécessaire] Il existe en fait 116 versions de Python, y compris deux versions de développement.
Votre tâche consiste à imprimer / imprimer une liste de toutes les versions de Python, dans l'ordre de votre choix et dans le format de votre choix. Vous ne pouvez utiliser aucune fonction intégrée dans laquelle ces informations sont stockées.
Vous êtes libre de choisir le format de sortie, mais chaque version doit être identifié sur la manière standard: 1.1
, 2.3.0
, 2.7.10
et ainsi de suite.
La liste complète 2 des versions de Python, séparées par des virgules, est présentée ci-dessous:
1.1, 1.2, 1.3, 1.4, 1.5, 1.5.1, 1.5.2, 1.6, 2.0, 2.0.1, 2.1, 2.1.1, 2.1.2, 2.1.3, 2.2, 2.2.1, 2.2.2, 2.2.3, 2.3, 2.3.1, 2.3.2, 2.3.3, 2.3.4, 2.3.5, 2.4, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.5, 2.5.1, 2.5.2, 2.5.3, 2.5.4, 2.6, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.6.6, 2.6.7, 2.6.8, 2.6.9, 2.7, 2.7.1, 2.7.2, 2.7.3, 2.7.4, 2.7.5, 2.7.6, 2.7.7, 2.7.8, 2.7.9, 2.7.10, 2.7.11, 2.7.12, 2.7.13, 2.7.14, 2.7.15, 2.7.16, 3.0, 3.0.1, 3.1, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 3.1.5, 3.2 , 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.5, 3.2.6, 3.3.0, 3.3.1, 3.3.2, 3.3.3, 3.3.4, 3.3.5, 3.3.6, 3.3.7, 3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10, 3.5.0, 3.5.1, 3.5.2, 3.5.3, 3.5.4, 3.5.5, 3.5.6, 3.5.7, 3.6.0, 3.6.1, 3.6.2, 3.6.3, 3.6.4, 3.6.5, 3.6.6, 3.6.7, 3.6.8, 3.7.0, 3.7.1, 3.7.2, 3.7.3
ou par versions majeures:
1.1
1.2
1.3
1.4
1.5, 1.5.1, 1.5.2
1.6
2.0, 2.0.1
2.1, 2.1.1, 2.1.2, 2.1.3
2.2, 2.2.1, 2.2.2, 2.2.3
2.3, 2.3.1, 2.3.2, 2.3.3, 2.3.4, 2.3.5
2.4, 2.4.1, 2.4.2, 2.4.3, 2.4.4
2.5, 2.5.1, 2.5.2, 2.5.3, 2.5.4
2.6, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.6.6, 2.6.7, 2.6.8, 2.6.9
2.7, 2.7.1, 2.7.2, 2.7.3, 2.7.4, 2.7.5, 2.7.6, 2.7.7, 2.7.8, 2.7.9, 2.7.10, 2.7.11, 2.7.12, 2.7.13, 2.7.14, 2.7.15, 2.7.16
3.0, 3.0.1
3.1, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 3.1.5
3.2, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.5, 3.2.6
3.3.0, 3.3.1, 3.3.2, 3.3.3, 3.3.4, 3.3.5, 3.3.6, 3.3.7
3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10
3.5.0, 3.5.1, 3.5.2, 3.5.3, 3.5.4, 3.5.5, 3.5.6, 3.5.7
3.6.0, 3.6.1, 3.6.2, 3.6.3, 3.6.4, 3.6.5, 3.6.6, 3.6.7, 3.6.8
3.7.0, 3.7.1, 3.7.2, 3.7.3
Le défi est un défi de production fixe, et très proche d’un défi de kolmogorov , sauf que le format de sortie est optionnel.
2 La liste est extraite du site Web officiel de Python, ici et ici . Certaines versions ne sont pas incluses, telles que 0.9.0
.. 0.9.9
et 1.5.1p1
. Vous devez utiliser la liste ci-dessus, même si vous trouvez des versions qui ne sont pas incluses. J'ai décidé de m'en tenir aux listes officielles, car sinon quelqu'un trouverait probablement une 2.1.0.1.2
version ou quelque chose du genre.
la source
1.1.0
(pour faire toutes les versions 3 numéros) au lieu de1.1
?Réponses:
JavaScript (ES6),
128 125124 octetsEnregistré 1 octets grâce à @ OlivierGrégoire
Affiche chaque version sur une ligne séparée. Ordonné de la version majeure la plus élevée à la plus basse, et de la révision la plus basse à la plus haute.
Essayez-le en ligne!
Comment?
la source
C # (compilateur interactif Visual C #) , 109 octets
Contient de nombreux non imprimables, dont les codes sont indiqués entre parenthèses. Ceci est un programme complet. Les octets nuls sont remplacés par
\0
s dans le lien TIO, car mon appareil ne peut pas les copier et les coller.Sauvegardé d'un octet grâce à @OlivierGregoire.
Essayez-le en ligne! (Merci à @OlivierGregoire pour l'implantation des octets nuls)
Explication
Chaque caractère de la chaîne représente le nombre de versions mineures en position principale. Par exemple, le caractère à l’index 5 (
ETX
) a une valeur ASCII de trois et correspond à la version principale.1.5.x
qui comporte trois versions mineures. Le programme prend la valeur ascii du caractère actuel et le répète en boucle, en imprimant les versions mineures avant de passer à la version majeure suivante.Pour certaines versions, il y a des lacunes dans les versions suivantes. Pour résoudre ce problème, la chaîne contient des octets nuls, de sorte que le programme effectue une boucle zéro fois lorsqu'il les rencontre.
La chaîne non imprimable contient les valeurs suivantes:
la source
j="..."[k];j-->0;
, d'autant plus que l'ordre n'a pas d'importance. Aussi, pouvez-vous expliquer la différence de taille entre le TIO (115 octets) et l'entrée (110 octets)?\0
s étaient remplacés par des octets nuls, il s'agirait de 110 octetsPyth, 52 octets
Essayez-le en ligne ici .
La sortie est une liste imbriquée, avec des éléments regroupés par version majeure et mineure. Il existe une liste vide au début de la sortie et une autre après
1.6
. La sortie complète est la suivante:Si cela n'est pas acceptable, ajoutez
.n
au code une sortie sous forme de liste aplatie au coût de 2 octets.la source
Java (JDK) , 134 octets
Essayez-le en ligne!
Les versions sont imprimées du plus haut au plus bas.
Crédits
la source
(a>1|b>0)&c<a.valueOf(y,36)
peut êtrea>1|b>0&&c<a.valueOf(y,36)
etc<1&(a<3|b<3)?
peut êtrec<1&&a<3|b<3?
de sauver 2 octets. Conseil Java pertinent - section Combinaison de contrôles binaires et logiques au lieu de parenthèses/10d
peut être*.1
int a=28
->int a=1
, et supprimez la condition dans la boucle for, puis ajoutez una++
pour enregistrer 3 octets. TIORetina , 105 octets
Essayez-le en ligne! Librement inspiré de la solution de @ Arnauld. Explication:
Insérer la chaîne composée de 11 espaces suivis des caractères donnés.
Pour chaque caractère, listez-le avec le suffixe et un
_
numéro de colonne.Convertissez les trois lettres en valeurs numériques.
Convertissez les valeurs numériques en unaires.
Pour chaque valeur allant jusqu'à la valeur donnée, utilisez-le comme suffixe pour le numéro de version, en extrayant les majeures et les mineures du numéro de colonne.
Supprimez le suffixe zéro pour les 16 premières versions qui en ont une.
la source
Gelée , 51 octets
Essayez-le en ligne!
Un lien niladique qui produit une liste de listes d'
.
entiers séparés par groupes de versions majeures. Sur TIO, il existe un code de bas de page pour les imprimer joliment.la source
33 , 484 octets
Je voulais essayer ceci dans mon langage de style brainf * ck.
Il imprime chaque version de python requise pour le défi, délimitée par des nouvelles lignes.
Voici une petite explication.
la source