出於效率的原因,我將一個文本巨大的字典表示爲一個Python字典,其中包含一個元組形式的密鑰(first letter, number of letter)
。我們可以把它想象成一個矩陣。讓我們從列表中建立了一個例子:如何通過密鑰的子集訪問字典的子集?
l=["baby", "bird","as","at", "friend","always"]
d = {}
for mot in l:
if (len(mot), mot[0]) in d:
d[len(mot),mot[0]].append(mot)
else:
d[len(mot),mot[0]] = [mot]
print("d : ", d)
結果是:
d : {(6, 'a'): ['always'], (6, 'f'): ['friend'], (2, 'a'): ['as', 'at'], (4, 'b'): ['baby', 'bird']}
的問題是如何打印在單指令/訪問線或行。 例如:所有的話開始用,或長度爲6
*真實*問題是,你能證明*任何*努力解決這個問題嗎? –
簡短的回答是:你不能。這不是字典的工作方式。您可能必須搜索所有密鑰,檢查它們包含的內容並連接結果。 – jonrsharpe
我想知道是否有更好的集合可以使用,而不是以元組作爲關鍵字的字典。 –