<p>以下是我的建议:</p>
<pre><code>def getConstituencies(aFile):
all_data = {}
constituency_keys = []
constituency_idx = []
# Store all of the information in the text file
with open(aFile, 'rb') as f:
lines = f.readlines()
# Go through the stored info and find all of the constituencies and corresponding indexes
for idx, line in enumerate(lines):
if line.split(':')[0] = '_Constituency':
constituency_keys.append(line.split(':')[1])
constituency_idx.append(idx)
# Now go through the stored lines and from the specified index until a blank line, store all the related info into a dictionary.
# Then, nest that dictionary into the all_data dictionary
for idx, c in zip(constituency_idx, constituency_keys):
temp_dict = {}
for line in lines[idx+1:]:
if line == "":
break
temp_dict[line.split(':')[0]] = line.split(':')[1]
all_data[c] = temp_dict
</code></pre>
<p>访问信息就是查询选区的问题:</p>
<pre><code>all_data['East Midlands']['Green']
</code></pre>
<p>我还建议您从<a href="https://www.geeksforgeeks.org/python-pandas-dataframe/" rel="nofollow noreferrer">Pandas</a>开始将数据排序为数据帧—这将使您的数据处理变得更加轻松</p>
<p>欢迎其他用户提出建议和反馈。你知道吗</p>