有没有为python编写的化学数据库?

时间:2012-05-31 14:04:22

标签: python chemistry

我写的脚本需要知道锡的原子质量。有没有python数据库有这样的信息?

修改

periodictable很不错,但有些lib的数据更丰富。例如gperiodic程序。

3 个答案:

答案 0 :(得分:8)

你可以在问之前简单地用Google搜索。但无论如何,您可能会觉得这很有用:http://pypi.python.org/pypi/periodictable。下面是一个直接显示页面的示例。

>>> from periodic import element
>>> hydrogen = element('hydrogen')
>>> hydrogen.mass
1.0079

答案 1 :(得分:5)

不是特定于python的,但是Sourceforge上托管的Blue Obelisk data repository是XML格式的化学数据的综合回购,以防对您(或其他任何人发现此情况)有用。

答案 2 :(得分:3)

周期表和真正的化学数据库是完全不同的我建议你改变你的问题的标题! CAS数据库中有超过9000万种有机和无机物质!完全用Python编写的化学数据库根本不是处理这么多记录的最佳选择,而且速度非常慢!

最好使用python包装器允许使用Python访问外部化学数据库,我喜欢chemspipy ChemSpider的Python包装器。使用Pip很容易安装但是你需要注册(但它是免费的)到RSC。

这里有一个小例子:

In [1]: from chemspipy import ChemSpider

In [2]: cs=ChemSpider('Here goes your personal code')

In [3]: tin=cs.simple_search('tin') #I use simple_search because search doesn't work for me

In [4]: print tin
[Compound(4509318)]                        

In [5]: tin[0].molecular_formula
Out[5]: u'Sn'

In [6]: tin[0].molecular_weight
Out[6]: 118.71