Python命令行无法识别模块

时间:2017-09-25 19:18:19

标签: python shell pentaho python-module

我有一个Python脚本,当我在Spyder或其他编辑器/ IDE中运行它时,它运行得很好但是当我双击它或尝试运行Pentaho Shell步骤时,它不会运行因为我是使用pandas模块。

ERROR:

2017/09/25 16:00:18 - etl_script.py - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : (stderr) Traceback (most recent call last):
2017/09/25 16:00:18 - etl_script.py - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : (stderr) File "C:\Users\giorge.luiz\etl_script.py", line 8, in <module>
2017/09/25 16:00:18 - etl_script.py - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : (stderr) import pandas as pd
2017/09/25 16:00:18 - etl_script.py - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : (stderr) ImportError: No module named pandas

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您使用的IDE可能与您在PATH环境变量中保存的版本或python可执行文件不同。

要确切地知道是否如此,请尝试创建一个脚本:

import sys
print(sys.executable)

尝试在IDE内部执行并双击和/或Pentaho Shell步骤,注意路径是相同还是不同。

快速而又肮脏的&#39;使用IDE之外的脚本以及您习惯使用的相同模块的方法(在* nix系统下):

#!<path-to-executable>

在脚本的开头(必须是第一行)并使脚本可执行(chmod u + x scriptname.py)。

注意:

  • <path-to-executable>是使用 print(sys.executable)打印的路径
  • 此方法不可移植!使用可移植脚本的好方法是package it for pypi或类似(完成创建后)和{{ 3}},或使用pip在specify your dependencies内安装软件包。后者是我通常所做和推荐的。