Windows - Cygwin - Vim - Python - 导入错误

时间:2014-05-10 22:12:46

标签: python vim matplotlib cygwin

我是一个尝试学习python27的新手编码器。我使用的是Windows 8.1,cygwin和Vim74(从cygwin命令行运行)。执行这个简单的脚本时......

import matplotlib.pyplot as plt

plt.plot([1, 2, 3, 4], [4, 7, 8, 12])
plt.title('title')
plt.show()

...从cygwin命令行或在cygwin中运行的VIM,我返回此错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named matplotlib.pyplot

当我从windows命令行执行脚本时,它工作正常,并显示正确的图形。我知道有很多类似的问题与这种类型的错误有关,但是,到目前为止我没有尝试过的任何东西......我确信它很简单......或许不是。提前感谢您的任何指导。

- 红色

1 个答案:

答案 0 :(得分:1)

你正在使用python的cygwin版本,它没有matplotlib库。您需要告诉cygwin当您运行python命令时,您需要Windows的Windows版本。将此行添加到.bashrc文件中。

alias python='/cygdrive/c/python27/python.exe'

如果您不知道.bashrc文件是什么,只需输入

即可
$ vim ~/.bashrc

你会编辑它。在文件底部添加上面的行,然后重新获取它。为此,请键入

$ . ~/.bashrc

从Vim运行的问题仍然存在:如果您正在使用cygwin版本的vim,那么它将使用cygwin路径,但不会使用别名。尝试使用此映射来解决此问题(添加到~/.vimrc文件):

au Filetype python nnoremap <leader>r :w !/cygdrive/c/python27/python.exe %<CR>

您现在应该可以使用<leader>r运行当前的python脚本如果您没有领导键,则为反斜杠,因此命令为\r

如果你不太专注于cygwin vim,我会建议使用vim的windows版本并使用gVim来满足你的所有编辑需求。这样的事情随着时间的推移变得越来越容易,随着你想做更多的事情,它们变得越来越复杂。