斯潘8
span4
本文是由5部分组成的系列文章的第1部分,旨在帮助您开始基本的Python和FME。本系列将介绍Python编程语言,并介绍Python在FME中的主要应用:脚本化参数,pythoncaller/pythoncrator变压器,关闭python脚本。本文将向您介绍Python编程语言,并包含有关在FME工作台中使用Python的基本信息。
Python是一种编程语言,可以在FME中使用它来完成FME运行前或运行后的任务,也可以在FME中执行标准FME工具和转换器无法完成的任务*。例如,您可以使用Python脚本在转换之前或之后移动数据。Python在FME中有4个主要的用途:
*重要注意事项:有许多FME转换器可以执行几乎每一项您可以想到的任务,而无需使用脚本。如果您正在考虑编写一个Python脚本来在FME中执行某些操作,那么您应该确保已经没有可用的现有转换器。请随时咨询FME社区:亚搏国际在线官网FME知识中心问答论坛。
点击在这里对于我们的FME传道者写的一篇有趣的博客文章,关于他在使用FME中可用的工具组合方面的经验,包括python脚本和自定义转换器,加强他的FME计划。
python可以从巨蟒主网站。Python发行版也可以从ActiveState的。
学习蟒蛇,有许多Python书籍可以从以下出版商那里获得O ' reilly,等。
三种免费资源是:
FME安装自己的Python解释器,在Windows上运行FME的任何Python脚本都可以使用它,除非另有说明。在Mac和Linux上,FME使用系统python解释器。如果你想让FME使用不同的Python解释器,工作台下面有一个设置工具>FME选项>翻译。
有关如何使用自定义解释器的更多信息,请参阅本文:
用户可以选择使用哪个Python解释器FME进行下面的翻译工具> FME选项>翻译。选项包括使用FME自己的python解释器,Esri ArcGIS解释器或自定义解释器。
FME与许多Python版本兼容。,可以指定与不同Python版本的兼容性级别Python的兼容性工作台中的工作区参数领航员窗格。例如,python 3.0引入了与python 2.x不向后兼容的重要更改,因此为工作区设置最理想的兼容级别非常重要。有关更多信息,请参见本页Python的兼容性。
注意,从FME 2019开始,python 2.7将是Windows平台的可选安装组件,不会使用默认安装设置进行安装。请参见Python 2.7弃用文章了解更多详细信息。
用户可以在“导航器”窗格中的“工作区参数>脚本>Python兼容性”下指定工作区的Python兼容性。
注意:workspace Navigator窗口中的Python兼容性参数优先于FME选项中的Python解释器设置。
许多与FME相关的python变量在FME启动和关闭脚本中可用。这些变量在FME模块,因此您需要包括语句进口fme访问它们。例如FME.状态变量在转换结束时可以为真或假,这取决于工作区的成功或失败。在帮助页中可以找到用于启动和关闭Python脚本的FME变量的完整列表启动和关闭python脚本在工作台。
FME相关变量之一,宏观价值观,当工作空间运行时,每个FME参数的字典。字典按参数名称编制索引,并保存参数值。
这些参数值通常在python脚本中使用,例如,当您想知道读卡器或其他用户定义参数中使用的源数据集的文件路径时。您可以通过访问字典来获取FME参数的值。宏观价值观。例如,如果要为AutoCAD Reader获取源数据集参数的值,并调用该参数SourceDataset_ACAD,你可以像这样在Python中访问这个参数:
导入fme sourcedataset=fme.macrovalues['sourcedataset_acad']
我们还可以通过创建脚本参数并从脚本返回值来设置FME参数。这包括在脚本参数项目。
运行工作区时,在启动脚本之前,脚本化参数按照导航器窗格中的外观顺序执行。
通过使用来自FME对象Python API的FME类和方法,Python脚本中可以使用FME的许多核心功能。例如,您可以访问FME日志文件,FME参数,或使用任何FME方法,如获得区域或reproject,等。,使用API。要在python脚本中使用fme对象,您需要使用以下语句导入FME对象:
进口fmeobjects
这里可以找到FME对象API文档:fme对象python api
关于何时使用FME对象的指导,请参阅:什么时候使用FME对象
有关FME对象Python API的更多信息:Python FME对象API
©2019安全亚搏在线软件公司|合法的