I've recently spent a little time working on a Python-based GPG module for Vim, and I have to say the Python <-> Vim interface is... clunky. You do get a very basic object for navigating the current structure of open tabs, panes and buffers, but when it comes to interacting with Vim, the Python code is literally reduced to pushing keystrokes at it. Whatever the user would type at the keyboard, you have to put into a string and send - with no assistance for proper quoting or anything.
Given that "add integration with Python instead of inventing more Vim script" has been near the top of the feature-vote results for quite a while, I hope the situation will get better soon:
Trying to install vim-python on Ubuntu 10.04 generates this message:
Package vim-python is a virtual package provided by:
vim-nox 2:7.2.330-1ubuntu3
vim-gtk 2:7.2.330-1ubuntu3
vim-gnome 2:7.2.330-1ubuntu3
You should explicitly select one to install.
E: Package vim-python has no installation candidate
This means that you need to install vim itself first, but there are three packages for vim. Use vim-nox if you don't care about the GUI. It does what it says: just installs vim, without gvim running on X. Then you can install vim-python.
Given that "add integration with Python instead of inventing more Vim script" has been near the top of the feature-vote results for quite a while, I hope the situation will get better soon:
http://vim.sourceforge.net/sponsor/vote_results.php