假設我有一個來自哈利波特魔法生物的按字母順序排列的列表,需要找出列表中的新發現屬於哪個(基於索引)。經過比我不想承認更多的思考,我想出了以下內容:獲取字符串屬於按字母順序排列的字符串列表的索引的最佳方法?
def find_insert_position(name, alpha_list):
pos = 0
end = len(alpha_list)
for n in range(len(name)):
for i in range(pos, end):
if (pos != end):
if ((name[n].lower() > alpha_list[i - 1][n].lower()) and (name[n].lower() <= alpha_list[i][n].lower())):
pos == i
if ((name[n].lower() < alpha_list[i + 1][n].lower()) and (name[n].lower() >= alpha_list[i][n].lower())):
end == i
elif (pos == end):
return pos
我敢肯定有更好的方法去了解這一點,我也相當肯定上面甚至沒有正常工作。有什麼建議?
假設 名= '匈牙利樹蜂' 和 alpha_list = [ 'Acromantula', '蛇怪', '駿鷹', 'Merperson', '蟾蜍', '巨魔', '夜騏', '精靈'] 。 所以這個函數會返回整數3,表示索引名稱屬於alpha_list。
你只是想知道的位置,或只是保持列表的字母順序? – Jeremy
知道它所屬的位置。這個函數實際上並不會改變我遵循的列表 – Maccus