Propriétés Python 2 - Cloud

Guide des processeurs de Talend Cloud Pipeline Designer

Version
Cloud
Language
Français (France)
Product
Talend Cloud
Module
Talend Pipeline Designer
Content
Création et développement > Création de Pipelines

Propriétés à configurer pour traiter vos enregistrements à l’aide de code Python.

La version supportée de Python est 2.7.x.

Propriété

Configuration

Configuration Type de correspondance
Sélectionnez le type de transformation à effectuer : soit
  • MAP : retourne un seul élément, soit
  • FLATMAP : retourne une liste d’éléments (0 ou plus) comme un itérateur.

Pour plus d'informations, consultez Différences entre MAP et FLATMAP.

Python code

Saisissez le code Python dans cette zone. Vous pouvez cliquer sur le bouton pour ouvrir l'éditeur dans une boîte de dialogue séparée.

Plusieurs fonctionnalités sont disponibles dans l’éditeur pour vous aider à écrire votre code, notamment :
  • l’autocomplétion lors de la saisie (pour les fonctions, valeurs des enregistrements, etc.),
  • la mise en évidence des éléments, des lignes et de la syntaxe (comme les parenthèses ou crochets de début et de fin),
  • la possibilité de couper, copier et coller,
  • les variables et la syntaxe Avpath.
Remarque : Les imports de packages Java (comme import java.io) ne sont pas supportés dans le processeur Python.

Pour des astuces utiles concernant la syntaxe Python, consultez Astuces utiles pour l’utilisation de Python.

Pour plus d’informations sur le langage Python, consultez la documentation en ligne de Python.

Info Description (facultatif)

Saisissez une description pour le processeur.

Pour renommer le processeur, cliquez sur l'icône Edit près du nom par défaut du processeur.

Différences entre MAP et FLATMAP

  • MAP :

    Le processeur Python va émettre automatiquement un enregistrement de sortie pour chaque entrée. Il attend le résultat dans une variable appelée output. Le code Python le plus simple qui passe dans chaque enregistrement est donc :

    output = input

  • FLATMAP :

    Le code Python doit émettre explicitement des enregistrements. Cette option est utile si la logique de traitement veut émettre moins d’enregistrements de sortie qu’en entrée, généralement pour un filtre complexe (pour un filtre simple/normal, utilisez le processeur dédié aux filtres).

    Afin d’émettre un enregistrement en sortie, vous devez explicitement l’ajouter dans une variable appelée output. Le code Python le plus simple qui passe dans chaque enregistrement est donc :

    output.append(input)

    Mais ceci est également possible :
    if input["passengers"] > 4:
        output.append(input)

    Dans ce cas, le processeur Python agit comme un filtre ; il passe l’entrée uniquement lorsque le nombre de passagers (passengers) > 4.