Compatibilité Python

Paramètres du projet/de Transformer  > Scriptage > Compatibilité Python.

Ce paramètre spécifie le niveau compatibilité que votre traitement ou Transformer personnalisé a avec les différentes versions du langage de programmation Python et détermine l'interpréteur Python utilisé par FME lors de l'exécution d'un traitement.

FME charge un interpréteur Python qui est soit compatible, soit potentiellement compatible avec ce paramètre. Sous Windows et Mac OS X, il s'agit de l'interpréteur Python 3.10 fourni avec FME, et sous Linux, il s'agit de l'interpréteur Python installé sur le système.

Sous Windows, un interpréteur Python personnalisé peut être utilisé à la place de l'interpréteur fourni avec FME en spécifiant un interpréteur personnalisé pour le paramètre Interprète Python préféré dans Traitement. FME utilisera cet interpréteur à condition qu'il soit compatible ou potentiellement compatible avec le paramètre de compatibilité Python du traitement.

Note  Quand un interpréteur est potentiellement compatible avec ce paramètre, un avertissement apparaît dans la fenêtre de log.

Rétrocompatibilité

Si un traitement est créé avec une ancienne version de FME Workbench dont la Compatibilité Python est paramétrée sur Python 2.7 ou Esri ArcGIS Python 2.7, un des scénarios suivant se produit à l'ouverture du traitement :

  • Si le traitement ne contient pas de Python défini par l'utilisateur, la Compatibilité Python se met automatiquement à jour avec la dernière version de Python prise en charge.
  • Si le traitement contient un Python défini par l'utilisateur, un message d'avertissement vous informe que la Compatibilité Python sera mise automatiquement à jour avec la dernière version de Python prise en charge, ce qui peut provoquer un comportement inattendu à l'exécution du traitement.

Les Transformers personnalisés dont la compatibilité avec Python est définie sur Python 2.7 ou Esri ArcGIS Python 2.7 doivent être mis à jour manuellement sur un paramètre pris en charge avant d'être intégrés ou liés dans un traitement.

Note  Python 3.0 a introduit des changements importants qui ne sont pas rétrocompatibles avec Python 2.x. Pour plus d'informations, voir https://wiki.python.org/moin/Python2orPython3.

Niveaux de compatibilité

  • Compatible : la version x.y de Python est compatible avec la version w.z si x == w et y >= z
  • Potentiellement compatible : la version x.y de Python est potentiellement compatible avec la version w.z si x == w et y < z
  • Incompatible : la version x.y de Python est incompatible avec la version w.z si x != w
Note  Les interpréteurs Esri ArcGIS Python sont seulement compatibles et potentiellement compatibles avec d'autres interpréteurs Esri ArcGIS en raison de l'accès au package ArcPy.

Spécifier une compatibilité

Le tableau ci-dessous répertorie les versions de Python et les valeurs de compatibilité dans FME Workbench.

Conseil  L'option Interpréteur Python préféré se trouve dans Outils > Options FME > Traitement.

Version Python

Le traitement ou Transformer personnalisé est compatible avec :

Valeur d'Interpréteur Python préféré

Python 3.12+

Python 3.12 et plus

FME Python 3.12+ ou un interpréteur personnalisé basé sur Python 3.12 ou plus.

Python 3.11+

Python 3.11 et plus

FME Python 3.11+ ou un interpréteur personnalisé basé sur Python 3.11 ou plus.

Python 3.10+

Python 3.10 et plus

FME Python 3.10+ ou un interpréteur personnalisé basé sur Python 3.10 ou plus.

Python 3.9+

Python 3.9 et plus

FME Python 3.8+ ou un interpréteur personnalisé basé sur Python 3.9 ou plus.

Python 3.8+

Python 3.8 et plus

FME Python 3.8+ ou un interpréteur personnalisé basé sur Python 3.8 ou plus.

Esri ArcGIS Python 3.9

Interpréteur Python 3.9 distribué avec ArcGIS Pro 3.0 et ArcGIS Server 11

Esri ArcGIS Python 3.9

Scénarios

Exécuter un traitement ou Transformer personnalisé où Python est de la manière la plus optimale possible sur FME Form

Laissez Compatibilité Python avec ses réglages par défaut.

Utiliser un interpréteur Python spécifique, comme un interpréteur spécifique à un système avec des modules personnalisés

Réglez Compatibilité Python pour correspondre à la version de Python de l'interpréteur personnalisé spécifié par le paramètre Utiliser un interpréteur personnalisé de l'option Interpréteur Python préféré (Outils > Options FME > Traitement).

Pour exécuter un code Python qui utilise des entités depuis une version spécifique de Python

Régler Interpréteur Python dans la version correcte de Python.

Pour s'assurer de la meilleure compatibilité avec d'autres utilisateurs FME Form et/ou FME Flow.

Laissez Compatibilité Python avec ses réglages par défaut.

Utiliser un interpréteur Python Esri ArcGIS pour utiliser un package ArcPy

Définissez la compatibilité Python sur l'un des paramètres compatibles avec l'interpréteur Python 3.x distribué avec ArcGIS Pro.