添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

python如何定位模块?

python使用sys.path中指定的搜索列表在多个位置搜索python模块。要查看sys.path中默认的目录,您可以使用python运行此代码
导入系统,pprint pprint.pprint(系统路径)

代码在FME中的重复使用

为了在FME中使用python模块,你需要做两件事:

  • 确保python知道在哪里可以找到模块(即确保模块位于sys.path引用的目录中)/li>
  • 站点库是用户安装自己模块的标准位置。在Windows上,它通常位于:

    C:\python24\lib\site库

    如果找不到python安装的站点lib(在unix上,这可以有所不同。

    标准的fme python目录

    当fme启动python解释器时,它将以下内容添加到sys.path中:

  • $(fme_home)/python
  • $(fme_mf_dir)(即映射文件/工作区的位置)
  • 任何位置工作台都将识别为变压器目录(例如“我的文档\fme\transformers”)。
  • 如果希望python在其他位置搜索您的python脚本,有两种方法(通过FME)在运行时将目录添加到sys.path
    1。将代码片段(类似于以下内容)添加到工作区的启动python脚本中:

    导入sys.path.append(r“c:\project\foo”)

    2。将以下内容添加到工作区的标题:

    fme_python_path“C:\\project\\foo”

    有几种方法可以让FME导入python模块,然而,您甚至不需要显式导入模块。
    如果您的模块(例如 MyMeult.Py )包含一个pythonfictory的实现 (例如MyFactoryClass),你得告诉那家蟒蛇工厂 (PythonCaller transformer)“要使用的python符号”是mymodule.myFactoryClass。蟒蛇工厂 足够智能,知道在使用实现类之前需要加载“mymodule”模块。
    如果要导入模块以用于其他目的,你可以这样做:

    在启动python脚本中

    添加以下行:

    导入MyMo模块

    在你的蟒蛇/蟒蛇中

    添加以下行:

    导入MyMo模块

    在映射文件或工作区头中

    添加以下行:

    fme_python_导入mymodule
    thub.nodes.view.add-新注释 蟒蛇 启动脚本 巨蟒召唤者