擅长:python、mysql、java
<p>您可以使用正则表达式从所有文件中获取数据,然后根据需要处理它们。像这样的事情可能会奏效。在</p>
<blockquote>
<p>I've assumed that there's nothing after the coordinate values in the file. You will have to run this script from the directory all the files are in.</p>
</blockquote>
^{1}$
<p>这将为您提供一个以<code>ATOM ID</code>为键、所有坐标列表为值的字典。
输出示例:</p>
^{pr2}$
<hr/>
<p>在回顾这个问题后,我认为我误解了输入。
在所有文件中,<code>ITEM: ATOMS id x y z</code>行是静态的。所以,我把代码改了一点。在</p>
<pre class="lang-py prettyprint-override"><code>import os, re
regex = r"^ITEM: ATOMS id x y z.*" # basing on this line being exactly "ITEM: ATOMS id x y z"
output = {} # dictionary to store all coordinates
for file in os.listdir():
if os.path.isfile(file):
with open(file,'r') as f:
data = f.readlines()
matches = re.findall(regex,''.join(data),re.MULTILINE | re.DOTALL)
temp = matches[0].split('\n')
output[file] = temp[1:] # storing against filename as key
</code></pre>