Python列表中含有相同字母的字符串做list嵌套歸類輸出

輸入:[‘eat’,‘ate’,‘tea’,‘like’,‘kile’,‘liek’,‘ielk’]
輸出:[[‘eat’,‘ate’,‘tea’],[‘like’,‘kile’,‘liek’,‘ielk’]]

a_list = ['eat','ate','tea','like','kile','liek','ielk']

def list_group(a_list):
    len_list = len(a_list)
    # 結果
    result = []
    # 記錄字符串排序後的位置字典
    dict_location = {}
    for value_i in a_list:
        s = "".join((lambda x:(x.sort(),x)[1])(list(value_i)))
        dict_location_keys = dict_location.keys()
        if s not in dict_location_keys:
            dict_location[s] = len(dict_location_keys)
            result.append([s])
        else:
            result[dict_location[s]].append(value_i) 
    return result

list_group(a_list)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章