Pymol的使用其实可以分为两种,一种是GUI图形操作界面,直接可以去Pymol官网上下,另一种则是使用API的方式直接调用,适合写脚本批量处理一些东西。建议画图,看结构直接用GUI,但是计算RMSD啥的,用API处理会非常顺滑。
今天主要介绍一下怎么使用anconda上下载安装pymol并且通过API命令行进行使用。
因为pymol的python支持比较乱,试了两三个,发现python=3.7的应用会比较好一点。所以打算创建一个python3.7的anconda虚拟环境然后逐步配套安装
-从window系统-
打开Aconda Prompt
输入conda create -n pyoml3.7 python=3.7
回车
我们成功创建一个名为pymol的虚拟环境,它里边的python版本是3.7
然后输入condaactivate pymol3.7
回车
进入虚拟环境
因为pymol的在线下载非常慢,所以我采用的是先离线下载安装包,然后用pip逐个安装
pymol的包为
都可以在https://www.lfd.uci.edu/~gohlke/pythonlibs/
获得,也可以直接wx回复pymol3.7获得
下载之后,我把这几个包都放到了D盘
然后使用指令cd /d D:
将conda的位置也转变到D盘
最后分别输入
pip install numpy-1.21.6+mkl-cp37-cp37m-win_amd64.whl
Pip install pymol_launcher-2.1-cp37-cp37m-win_amd64.whl
Pip install pymol-2.6.0a0-cp37-cp37m-win_amd64.whl
完成安装
因为本人喜欢pycharm,所以使用pycharm看一下anconda的环境,以成功安装。
---------------------------
为什么要安装pymol呢,是因为要批量计算两个蛋白的Cα RMSD
跟大家直接分享一下代码
import pymol
from pymol import cmd
def pymol_rmsd(in_file,ref_file):
"""
can change the RMSD scope by change align() API code
the total code is pymol.cmd.align('x and name N+CA+C and polymer', 'x and name N+CA+C and polymer')
default:calculate Cα rmsd
"""
cmd.load(in_file,'1')#需要比对的蛋白1
cmd.load(ref_file,'2')#需要比对的蛋白2
RMSD_pymol=cmd.align('1 and name CA and polymer', '2 and name CA and polymer')
return RMSD_pymol[0]
-------------
linux系统就比较简单
创建好虚拟环境之后
打开终端,直接使用pymol官网推荐的命令行或者tar.bz2解压安装
pymol的API指令还有很多,pymolwiki上可以学习。
-------------------------------------------
欢迎点赞收藏转发!
下次见!