<p>您可以使用各种数据结构来存储这些数据。您可以将每行中的数据存储在一个元组中,该元组包含(city\u name、street\u number、street\u type、street\u name),然后将每个元组存储到一个列表中。一个稍微好一点的选择是将数据存储到字典列表中。下面是一个简短的演示。你知道吗</p>
<pre><code>fname = 'citydata.txt'
addresses = []
keys = ('city', 'num', 'type', 'name')
with open(fname) as f:
for line in f:
line = line.rstrip()
city, line = line.split(',', 1)
num, street_type, street_name = line.split(None, 2)
t = (city, num, street_type, street_name)
print(t)
addresses.append(dict(zip(keys, t)))
print()
for row in addresses:
print(row)
print()
for row in addresses:
print(row['num'])
</code></pre>
<p><strong>输出</strong></p>
<pre><code>('Paris', '458', 'boulevard', 'Saint-Germain')
('Paris', '343', 'boulevard', 'Saint-Germain')
('Marseille', '343', 'boulevard', 'Camille Flammarion')
('Marseille', '29', 'rue', 'Camille Desmoulins')
('Marseille', '1', 'chemin', 'des Aubagnens')
{'city': 'Paris', 'num': '458', 'type': 'boulevard', 'name': 'Saint-Germain'}
{'city': 'Paris', 'num': '343', 'type': 'boulevard', 'name': 'Saint-Germain'}
{'city': 'Marseille', 'num': '343', 'type': 'boulevard', 'name': 'Camille Flammarion'}
{'city': 'Marseille', 'num': '29', 'type': 'rue', 'name': 'Camille Desmoulins'}
{'city': 'Marseille', 'num': '1', 'type': 'chemin', 'name': 'des Aubagnens'}
458
343
343
29
1
</code></pre>