擅长:python、mysql、java
<p>您可以使用<code>itertools.groupby</code>:</p>
<pre><code>import itertools
file_data = [i.strip('\n').split() for i in open('filename.txt')]
final_data = [(a, list(b)) for a, b in itertools.groupby(file_data, key=lambda x:':'.join(x[-1].split(':')[:2]))]
new_final_data = [' '.join([' '.join(b[0][:-1]), ' '.join([b[0][-1], b[-1][-1]])]) for _, b in final_data]
print(new_final_data)
with open('filename.txt', 'a') as f:
f.write('\n'.join(new_final_data))
</code></pre>
<p>输出:</p>
<pre><code>['datatype1 designator1 3:45:14AM 3:45:31AM', 'datatype1 designator1 4:10:05AM 4:10:46AM']
</code></pre>