pymatgen 的命令行工具

command line utility of pymatgen

我已经安装了 python 包 pymatgen,当我在我的 Jupyter 笔记本中使用它时,它完美地工作。但是,现在我想按照此处指定的方式进行 POSCAR 设置:https://pymatgen.org/installation.html 但是当我在我的命令行 (Linux) 中 运行: pmg config -p <EXTRACTED_VASP_POTCAR> <MY_PSP> (with my directories) 时,它找不到它并且我得到错误:

Command 'pmg' not found, did you mean:

  command 'mg' from deb mg
  command 'pmc' from deb linuxptp
  command 'pig' from deb bsdgames
  command 'pmi' from deb powermanagement-interface
  command 'pmw' from deb pmw
  command 'vmg' from deb vmg
  command 'pms' from deb pms
  command 'pm' from deb powerman
  command 'peg' from deb peg

编辑:我找到了文件 "pmg",它看起来如下:

#!/home/ramfrey/anaconda3/bin/python

# -*- coding: utf-8 -*-
import re
import sys

from pymatgen.cli.pmg import main

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

如果我 运行 python pmg 我得到错误:

Traceback (most recent call last):
  File "pmg", line 7, in <module>
    from pymatgen.cli.pmg import main
ImportError: No module named pymatgen.cli.pmg

但是这个确切的模块 "pymatgen.cli.pmg" 我可以毫无问题地导入我的 jupyter notebook。 而且我还是不太明白,因为在安装指南中,它说应该直接 运行 "pmg config…"

问题确实是我对 运行 pmg 脚本使用了错误的 python 版本(这是一台工作计算机,有许多不同的 python 版本,我正在使用python 3.7.6 但有一个旧的 python 2.7 设置为默认值,在 运行 "python pmg" 时使用。我 运行 conda activate base 在我的 /home/username/anaconda3 然后 python pmg etc. 并且成功了。