擅长:python、mysql、java
<p>您的数据结构不适合此项工作;请考虑使用不同的数据结构,然后最终更改为您的数据结构:</p>
<pre><code>data = "Martin;Sailor;-0.24 Joseph_4;Sailor;-0.12 Alex;Teacher;-0.23 Maria;Teacher;-0.57"
data = [r.split()[-1] for r in data.split(';')]
# data = ['Martin', 'Sailor', 'Joseph_4', 'Sailor', 'Alex', 'Teacher', 'Maria', 'Teacher', '-0.57']
# for the moment use one dict keyed with jobs for easy updating
out = {}
for name, job in zip(data[::2], data[1::2]):
out.setdefault(job, []).append(name)
# out = {'Sailor': ['Martin', 'Joseph_4'], 'Teacher': ['Alex', 'Maria']}
# in the very end, convert to desired output format
out = [{'Job': job, 'People': people} for job, people in out.items()]
# out = [{'Job': 'Sailor', 'People': ['Martin', 'Joseph_4']}, {'Job': 'Teacher', 'People': ['Alex', 'Maria']}]
</code></pre>