<p>你真的有太多不同的问题:</p>
<h2>解析文件并从中提取数据</h2>
<pre><code>import itertools
# let's imitate a file
pseudo_file = """
> <Enzymologic: Ki nM 1>
257000
> <Enzymologic: IC50 nM 1>
n/a
> <ITC: Delta_G0 kJ/mole 1>
n/a
> <Enzymologic: Ki nM 1>
5000
> <Enzymologic: EC50/IC50 nM 1>
1000
""".split('\n')
def iterate_on_couple(iterable):
"""
Iterate on two elements, by two elements
"""
iterable = iter(iterable)
for x in iterable:
yield x, next(iterable)
plain_lines = (l for l in pseudo_file if l.strip()) # ignore empty lines
results = {}
# store all results in a dictionary
for name, value in iterate_on_couple(plain_lines):
results.setdefault(name, []).append(value)
# now you got a dictionary with all values linked to a name
print results
</code></pre>
<p>现在这段代码假设你的文件没有被破坏
你总是有这样的结构:</p>
<ul>
<li>空白</li>
<li>姓名</li>
<li>价值</li>
</ul>
<p>如果没有,你可能需要更坚固的东西。在</p>
<p>其次,它将所有值存储在内存中,如果
你有很多价值观。如果是这样的话,你需要考虑一些存储空间
解决方案,例如<code>shelve</code>模块或<code>sqlite</code>。在</p>
<h2>将结果保存到文件中</h2>
^{pr2}$
<p>因为我正在为您编写整个代码,所以我仔细地使用了一些高级Python习惯用法,这样您在使用它时会有一些值得思考的东西。在</p>