Programmer avec le langage Linotte
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

Programmer avec le langage LinotteConnexion

Besoin d'un conseil sur la programmation en Linotte ?

-20%
Le deal à ne pas rater :
OnePlus Nord CE 2 5G – 8GB RAM 128GB – Charge 65W
239 € 299 €
Voir le deal

descriptionGreffon Python EmptyGreffon Python

more_horiz
Les greffons python : j'essaye d'en implanter suivant la procédure et je n'arrive qu'à obtenir dans l'atelier Linotte "Type de retour non supporté :<type 'NoneType'>"
Pourquoi ?
Merci pour réponse.

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Bonjour,

Avec quelle version de l'Atelier ?

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Atelier 2.7
J'ai l'impression que python tourne imparfaitement car il y a des instructions qui ne passent pas "ex :
append() "
Merci de votre présence car le forum m'apparait bien calme

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Le python utilisé est en version 2. C'est peut être pour cela ?

Petite question, pourquoi vous n'utilisez pas Linotte 3 ? D'ailleurs vous utilisez Linotte depuis pas mal d'année ?

Bonne soirée !

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Bonne question.
J'ai essayé linotte 3. Après avoir pris en compte les modifs (suppression de "lis", de la déclaration des variables ...) , il s'avère que mon programme de SE (système expert) ne tourne pas. Exemple : joker n'est pas reconnu.
Je ne pourrai pas vous donner le programme qui contient près de 900 lignes.
Enfin, (à moins d'une erreur de ma part) j'ai constaté que linotte 3.6 n'a aucun pg .py comme il en existe dans la version 2 comme "abaque.py" ou "Pydemo.py"
Merci de votre présence du le forum
FC

descriptionGreffon Python EmptyTjrs greffon Python sur atelier 2.6

more_horiz
Je reviens vers vous  :
Sur un atelier Linotte 2.6 dans le répertoire greffon un pg.py  (où pg = Arrangement) infra :

from itertools import permutations
from org.linotte.greffons.externe import Greffon

class Arrangement(Greffon):
   def slot_arrangements(self,notes) :      
       per = permutations(notes)          
       for i in per :
           return i

En respectant la structure de la déclaration .xml -(nommé : python.arrangement.greffon.xml) qui génère Arrangement.$py.class  et l'espèce arrangement.

Enfin, voici le Arrangement.liv :

principale :
solution est un arrangement
list1 est un casier de nombre valant 1,2,3  
début
affiche solution.arrangements(list1)

le retour obtenu est :

Type de retour non supporté :<type 'tuple'>

J'espère avoir été clair
Cordialement

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Attention, il faut lire "list1" et non "notes" dans arrangement.py

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Bonjour,
Les tuples sont des types qui n'existent pas en Linotte.
Si mes souvenirs sont bons... il faut renvoyer une liste. ça devrait mieux marcher.
Ronan

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Par rapport à Linotte 3. Le joker fonctionne toujours.

Si vous avez un exemple qui ne fonctionne pas, n'hésitez pas me mettre un petit exemple simple que je puisse reproduire le problème.

ça fait plaisir de revoir du monde sur le Forum !

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Voici infra un exemple sous Linotte 2.7 et sous Linotte 3.9

___________________________________________________________________________________________________
Sous linotte 2.7 :

globale
Base est un casier de texte valant "socrate", "immortel"
liste est un texte
pos6 est un nombre

essai:
début
liste vaut "immortel"
pour chaque Base , lis
si liste contient joker cherche pos6, la position de joker dans Base
ferme
affiche pos6

Résultat : pos6= 2
___________________________________________________________________________________________________
Sous linotte 3.9 :

globale
Base est un casier de texte valant "socrate", "immortel"
liste est un texte
pos6 est un nombre

essai:
liste vaut "immortel"
pour chaque Base
si liste contient joker cherche pos6, la position de joker dans Base
ferme
affiche pos6

Résultat  : "L'acteur est inconnu de la fonction et du livre : liste contient joker"

_________________________________________________________________________________________________

Je donne ma langue au chat !
Merci de m'éclairer
Cordialement
FC

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Encore une inconnue pour moi :
Il est dit que Linotte travaille avec des fichiers encodés au format UTF-8. Or depuis peu il traduit les accent en ANSI (é=é)
Notepad++ n'y est pour rien dans cet encodage.
Je suspecte Win 11 d'être à l'origine de ce changement, à la suite  d'une m à j à son installation sur mon PC.
Qu'en pensez-vous ?
Cordialement
FC

PS : je vous signale que Linotte 2.7 n'accepte pas non plus les listes python (comme les tuples)

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz

Code:

globale
Base est un casier de texte valant "socrate", "immortel"
liste est un texte
pos6 est un nombre

essai:
liste vaut "immortel"
pour chaque Base
si liste contient joker cherche pos6, la position de joker dans Base
ferme
affiche pos6


étrange.... je regarde ça !

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Bogue corrigé : https://github.com/cpc6128/LangageLinotte/commit/f28e6f551d7bbeb3dd7d2acea91880d8f5c47262
Sera intégré dans la prochaine version

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
FCas a écrit:
Encore une inconnue pour moi :
Il est dit que Linotte travaille avec des fichiers encodés au format UTF-8. Or depuis peu il traduit les accent en ANSI (é=é)
Notepad++ n'y est pour rien dans cet encodage.
Je suspecte Win 11 d'être à l'origine de ce changement, à la suite  d'une m à j à son installation sur mon PC.
Qu'en pensez-vous ?
Cordialement
FC

PS : je vous signale que Linotte 2.7 n'accepte pas non plus les listes python (comme les tuples)


Je n'ai pas de Windows 11 pour tester. étrange.

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Apparemment la vers. 3.10 de Linotte ne reconnait pas "connecteur" dans l'expression  :ouvre connecteur avec "écrasement" depuis "D:\datalinotte\SE\BaseFaits1.txt"
Cordialement

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Je vous affiche un PG figurant dans la liste de la vers. 3.10 de Linotte qui ne fonctionne pas :
principale :
Connecteur est un fichier
Prénom est un texte valant "Ronan"
Prénom2 est un texte valant "Magali"
Nom est un texte valant "Dupond"
Nom2 est un texte valant "Durand"
ouvre connecteur avec "écrasement" depuis "c:/temp/test_tube.txt"
charge prénom dans connecteur
charge nom dans connecteur
charge prénom2 dans connecteur
charge nom2 dans connecteur
ferme connecteur

Quand on le lance rien ne se passe !
Cordialement.

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Ne tenez pas compte de ma remarque  concernant le PG figurant dans la liste de la vers. 3.10 de Linotte
Après réflexion, j'ai  trouvé le fichier ( "c:/temp/test_tube.txt") où les info "Ronan", "Magali" ... sont enregistrées

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
ça y est le connecteur fonctionne (une ânerie de ma part)
Donc tout est clean pour la version 3.10 de Linotte (qui est plus rapide)
Et mes programmes fonctionnent bien.
Il reste le pb des greffons python.
Merci à vous
Cordialement.

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Comptez vous mettre en place les greffons python dans la vers. 3.10 de Linotte ?

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Bon, je crois devoir faire le deuil de ma demande, voire même de l'évolution de ce langage prometteur.
Dommage car en persévérant on arrive tjrs à quelque chose !
FC

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
Bonjour,

En effet, pour l'instant, je ne vais pas remettre les greffons python.
J'utilise une librairie qui s'appelle Jython. Et elle n'est qu'en version 2.7. Et ça correspond à Python 2.7 également.

S'ils font une mise à jour vers Python 3.x, je rajouterai.
Je ne veux plus mettre de librairie qui n'évolue pas ou plus.

Ronan

descriptionGreffon Python EmptyRe: Greffon Python

more_horiz
privacy_tip Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum