π
<-
Chat plein-écran
[^]

QCC 2019 épisode 3 : modules Python

QCC 2019 épisode 3 : modules Python

Unread postby critor » 27 Aug 2019, 15:38

5409
Quelle Calculatrice programmable Choisir 2019 - Episode 3
Modules Python


Aujourd'hui abordons enfin la programmation Python, et plus particulièrement la richesse de chacune des implémentations.

Afin de prendre connaissance du contenu de chaque module, nous utiliserons de plus le script suivant :
Code: Select all
def sstr(obj):
  try:
    s=obj.__name__
  except:
    s=str(obj)
    a=s.find("'")
    b=s.rfind("'")
    if a>=0 and b!=a:
      s=s[a+1:b]
  return s

def isExplorable(obj):
  s=str(obj)
  return s.startswith("<module '") or s.startswith("<class '")

def explmod(pitm,pitmsl=[],reset=True):
  global curline
  if(reset):
    curline=0
    pitmsl=[sstr(pitm)]
  hd="."*(len(pitmsl)-1)
  spath=".".join(pitmsl)
  c=0
  for itms in sorted(dir(pitm)):
    c=c+1
    try:
      itm=eval(spath+"."+itms)
      print(hd+itms+"="+str(itm))
      if isExplorable(itm):
        pitmsl2=pitmsl.copy()
        pitmsl2.append(itms)
        c=c+explmod(itm,pitmsl2,False)
    except:
      print(hd+itms)
  if c>0:
    print(hd+"Total: "+str(c)+" item(s)")
  return c


Les
Casio Graph 35+E II
et
Graph 90+E
permettent d'accéder par défaut
175
éléments
(module
builtins
)
.

Elles permettent de plus l'importation de
2
modules complémentaires :
  • math
    (
    25
    éléments)
  • random
    (
    8
    éléments)


Par rapport aux programmes scolaires, on regrettera essentiellement 2 choses :
  • l'absence du module dédié aux fonctions complexes
    cmath
    (séries S, STI2D, et STL spécialité SPCL du BAC 2020, option Mathématiques Expertes du BAC 2021)
    :mj:
  • l'absence d'un module graphique
    (Maths collège avec Scratch, Physique-Chimie Seconde)
    :mj:


L'astuce TI-Planet :


Hors mode examen, tu peux installer et utiliser l'application sur ta
Graph 35+E II
pour bénéficier de
204
fonctions
builtins
, ainsi que de pas moins de
7
modules complémentaires : :bj:
  • array
    (
    4
    éléments)
  • cmath
    (
    12
    éléments)
  • gc
    (
    7
    éléments)
  • math
    (
    41
    éléments)
  • micropython
    (
    6
    éléments)
  • random
    (
    8
    éléments)
  • sys
    (
    12
    éléments)
ImageImageImageImageImageImageImage


Cette application est également utilisable sur les anciens modèles
Graph 75+E
et même
Graph 35+E
après installation du système
Graph 75+E 2.05
dans ce dernier cas.. :bj:


La
TI-83 Premium CE Edition Python
et la
TI-83 Premium CE
munie du module externe
TI-Python
offrent quant à elles respectivement
190
éléments
builtins
.

Elles nous gâtent avec
7
modules complémentaires :
  • array
    (
    4
    éléments)
  • collections
    (
    2
    éléments)
  • gc
    (
    7
    éléments)
  • math
    (mais avec
    28
    éléments cette fois-ci)
  • random
    (
    8
    éléments)
  • sys
    (
    15
    éléments)
  • time
    (
    4
    éléments)

On regrettera là encore ici l'absence du module
cmath
ainsi que d'un module graphique. :mj:


L'astuce TI-Planet :


Si tu redescends ta
TI-83 Premium CE
en version
5.3.5
, même en mode examen tu peux bénéficier sur ton module externe
TI-Python
d'un
firmware
tiers
plus étendu avec
191
fonctions
builtins
ainsi que
12
modules complémentaires : :bj:
  • array
    (
    4
    éléments)
  • board
    (
    22
    éléments)
  • cmath
    (
    12
    éléments)
  • collections
    (
    2
    éléments)
  • gc
    (
    7
    éléments)
  • math
    (
    41
    éléments)
  • micropython
    (
    6
    éléments)
  • os
    (
    15
    éléments)
  • random
    (
    8
    éléments)
  • storage
    (
    21
    éléments)
  • sys
    (
    15
    éléments)
  • time
    (
    12
    éléments)


La
NumWorks
quant à elle se contente certes de
188
éléments
builtins
.

Mais elle nous couvre de
6
modules complémentaires fort pertinents :
  • cmath
    (
    12
    éléments)
  • kandinsky
    (
    5
    éléments)
  • math
    (
    41
    éléments)
  • micropython
    (
    6
    éléments)
  • random
    (
    8
    éléments)
  • time
    (
    3
    éléments)
  • turtle
    (
    38
    éléments)

On apprécie ici la présence de deux modules graphiques :
turtle
pour réinvestir les acquis du collège en
Scratch
tout en adoptant l'écriture
Python
(Mathématiques Seconde)
et
kandinsky
(Physique-Chimie Seconde)
. :bj:


La
HP Prime
est un cas particulier, dans le sens où elle ne dispose pas d'une véritable implémentation Python mais se contente de traduire silencieusement les scripts Python saisis vers son langage interprété historique.

Il n'y a pas de découpage en modules, mais les scripts
Python
saisis auront accès à
893
éléments.

On apprécie ici les fonctions graphiques pour la Physique-Chimie de Seconde.

On regrette toutefois l'absence de fonctions graphiques relatives
(à la turtle / Scratch / Logo)
.


L'année dernière, il était encore possible de coder en
Python
sur les
TI-Nspire
et
TI-Nspire CX
, grâce à et l'éditeur
pyWrite
ou
NoteWriter
.

MicroPython
offre donc
218
éléments
builtins
, agrémentés de
7
modules complémentaires :
  • array
    (
    4
    éléments)
  • cmath
    (
    12
    éléments)
  • gc
    (
    7
    éléments)
  • math
    (
    41
    éléments)
  • micropython
    (
    3
    éléments)
  • nsp
    (
    10
    éléments)
  • sys
    (
    15
    éléments)


On apprécie ici la présence d'un module graphique :
nsp
. :bj:

On regrette par contre l'absence du module aléatoire
random
. :(

Et surtout,
MicroPython
n'est plus installable sur les
TI-Nspire CX
acquises cette année.
MicroPython
nécessite en effet
Ndless
que
Texas Instruments
a une fois de plus bloqué avec la dernière version système
4.5.1
. Et c'est tout autant exclu sur les
TI-Nspire CX II
. :mj:




Comme tu le vois la
NumWorks
semble l'emporter pour les fonctionnalités
Python
offertes, en pertinence par rapport aux programmes scolaires. :bj:

Avant de conclure, une petite page de publicité en l'honneur de ses négatifs, les zéros absolus du jour :


Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32861
Images: 8601
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Online

Re: QCC 2019 épisode 3 : modules Python

Unread postby parisse » 27 Aug 2019, 16:40

A noter que sur les Casio Graph 35eii et 90, avec KhiCAS, on a une implementation de syntaxe Python plus complete que sur la HP Prime, *avec* les commandes tortue.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 70.2%
 
Posts: 1708
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: QCC 2019 épisode 3 : modules Python

Unread postby critor » 27 Aug 2019, 16:50

Je sais, merci.

Mais pour cette année, j'ai fait le choix de retenir/recommander au maximum 1 seule appli non officielle par fonctionnalité testée et par modèle.

Pour la programmation Python sur Casio Graph 35/75, c'est donc CasioPython que j'ai retenu.
KhiCAS a lui été retenu pour le calcul formel.

Sur fx-CG10/20, j'aurais pu retenir KhiCAS à la fois pour le Python et le calcul formel, vu que CasioPython n'existe pas pour ces modèles.
Mais les fx-CG10/20 ne font pas partie des modèles évalués cette année.

On verra comment organiser refondre les QCC l'année prochaine, si on veut bien nous clarifier la chose avec des circulaires et banques de sujets d'ici-là.
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32861
Images: 8601
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Online

Re: QCC 2019 épisode 3 : modules Python

Unread postby parisse » 27 Aug 2019, 17:47

Je comprends que c'est beaucoup de travail, mais limiter KhiCAS au calcul formel me semble tres reducteur. Concernant la programmation en syntaxe Python, KhiCAS est quand meme bien plus complet que CasioPython: programmation graphique, instructions tortue (d'ailleurs utilise l'an dernier pour le concours tiplanet), programmation appliquee aux mathematiques (equivalent partiel de numpy/scipy/matplotlib). Avec en prime debuggueur interactif. En fait c'est l'environnement compatible Python le plus complet du marche, alors ne pas en parler dans le QCC, je ne comprends tout simplement pas. D'autant plus qu'il est plus abouti que sur la Prime.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 70.2%
 
Posts: 1708
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: QCC 2019 épisode 3 : modules Python

Unread postby critor » 27 Aug 2019, 18:36

J'ai modifié l'article en rajoutant un paragraphe TI-Nspire, avec l'appli Ndless MicroPython.

Les TI-Nspire monochromes arrivent ainsi en 3ème position... et les TI-Nspire CX dernières.

Anomalie que je n'avais pas anticipée et dont le traitement m'a demandé donc un certain temps. Depuis 2015 le classement QCC est effectué pour chaque modèle avec la dernière mise à jour et la dernière révision matérielle.
Or MicroPython nécessite Ndless qui est bloqué cette année en version 4.5.1, ce qui disqualifie donc les TI-Nspire CX... mais pas les TI-Nspire ClickPad/TouchPad qui sont toujours en version 3.9.

Je n'ai pas de raison de faire d'exception pour un seul des constructeurs alors que c'est la règle appliquée à tous depuis 4 ans.

Texas Instruments n'a qu'à arrêter de faire des mises à jour qui dégradent ses produits en bloquant toute initiative communautaire conséquente
(Ndless avec tout ce que ça implique dont MicroPython et KhiCAS, firmware TI-Python tiers...)
; mais ça ça va bientôt faire une décennie qu'on leur dit et répète en vain à de nombreuses occasions. Si si, depuis une décennie malgré l'établissement de contacts avec la communauté on en est visiblement au même point, rien n'a bougé/évolué, toute initiative communautaire conséquente se voit immédiatement bloquée à la prochaine mise à jour. Même si la communauté n'a jamais attaqué le mode examen depuis son annonce en 2015, visiblement il n'y a strictement aucune confiance.

Les 3 constructeurs concurrents sont très loin d'adopter un comportement aussi extrême... Casio n'a pas sorti de mise à jour bloquant CasioPython sur Graph 35/75+E pour booster ses ventes de Graph 35+E II que je sache.
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32861
Images: 8601
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Online

Re: QCC 2019 épisode 3 : modules Python

Unread postby parisse » 27 Aug 2019, 19:48

critor wrote:J'ai modifié l'article en rajoutant un paragraphe TI-Nspire, avec l'appli Ndless MicroPython.

Une modification analogue mentionnant l'existence de KhiCAS pour les nouvelles Casio serait appreciee. Pour memoire, la compatibilite Python dans Xcas c'est 2 ans de travail (sur 19), le portage specifique a Casio c'est environ 3 mois pour la Graph 90, et 2 mois pour la graph 35eii. Le travail vient juste de commencer sur Numworks (15 jours pour prouver la faisabilite), il y a maintenant probablement plusieurs mois de travail pour realiser un shell equivalent a celui des Casio. Etre ignore dans le QCC pour une limitation uniforme d'une appli tierce par domaine sans tenir compte de la pertinence, c'est extremement decourageant.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 70.2%
 
Posts: 1708
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: QCC 2019 épisode 3 : modules Python

Unread postby DJ Omnimaga » 27 Aug 2019, 20:50

Je ne savais pas que le Python fonctionnait sur HP Prime. :O

Est-ce que ça fonctionne aussi sur le premier hardware G1?
User avatar
DJ OmnimagaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 80.4%
 
Posts: 343
Images: 0
Joined: 21 Feb 2012, 12:04
Location: Quebec, Canada
Gender: Male
Calculator(s):
Class: Diplômé Secondaire (11ème année scolaire terminé)
YouTube: DJOmnimaga
Twitter: DJOmnimaga
Facebook: DJOmnimaga.Music

Re: QCC 2019 épisode 3 : modules Python

Unread postby critor » 27 Aug 2019, 22:29

Oui, si ta HP Prime G1 est à jour, et que tu es en mode CAS, tu peux coder tes programmes/fonctions en syntaxe Python. :)
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32861
Images: 8601
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Online

Re: QCC 2019 épisode 3 : modules Python

Unread postby parisse » 28 Aug 2019, 19:50

critor wrote:Pour la programmation Python sur Casio Graph 35/75, c'est donc CasioPython que j'ai retenu.
KhiCAS a lui été retenu pour le calcul formel.

Sur fx-CG10/20, j'aurais pu retenir KhiCAS à la fois pour le Python et le calcul formel, vu que CasioPython n'existe pas pour ces modèles.
Mais les fx-CG10/20 ne font pas partie des modèles évalués cette année.

Par contre les Graph 90 en font partie, or CasioPython n'existe pas non plus pour ce modele alors que KhiCAS oui.
User avatar
parisseVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 70.2%
 
Posts: 1708
Joined: 13 Dec 2013, 16:35
Gender: Not specified

Re: QCC 2019 épisode 3 : modules Python

Unread postby critor » 29 Aug 2019, 13:01

Sur les Graph 90+E il y a le Python fourni directement par Casio.

Bon sinon, je viens de tester sur Graph 90+E 3.30 :
viewtopic.php?p=244815#p244815

Strictement aucun ajout, donc rien à modifier dans ce test.
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 95.2%
 
Posts: 32861
Images: 8601
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Next

Return to News Divers

Who is online

Users browsing this forum: No registered users and 4 guests

-
Search
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
1
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety 
-
Stats.
479 utilisateurs:
>445 invités
>29 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)