Bir sözlüğe sahip olduğumu ve sonra sözlüğün anahtarlarını içeren bir listenin olduğunu varsayalım. Listeyi sözlük değerlerine göre ayırmanın bir yolu var mı?Python'daki sözlük değerlerine göre bir liste mi sıralama?
Bu çalışıyorlar:
trial_dict = {'*':4, '-':2, '+':3, '/':5}
trial_list = ['-','-','+','/','+','-','*']
kullandığım için gitti:
sorted(trial_list, key=trial_dict.values())
Ve var:
TypeError: 'list' object is not callable
Sonra olabilecek bir işlev oluşturmak gittim
trial_dict.get()
ile çağrıldı:
def sort_help(x):
if isinstance(x, dict):
for i in x:
return x[i]
sorted(trial_list, key=trial_dict.get(sort_help(trial_dict)))
sort_help
işlevinin tür üzerinde herhangi bir etkisi olduğunu düşünmüyorum. Bu konuda gitmek için trial_dict.get()
kullanmanın doğru yolu olup olmadığından emin değilim.
Oi, cevap verdiğim sorulara cevap veriyorum ve akıllı cevaplar veriyorum! :) Daha ciddiyetle: thg'nin cevabı ile benimki arasındaki davranışta bir fark var. Eğer deneme_values, deneme_dict'ın bir anahtarı olmayan bir değer içeriyorsa, bir istisna artacaktır; bu esnada thg'ler bu değeri ön tarafa sessizce sıralayacaktır. Bağlamda bağlı olarak uygun olabilir. –
@ thg435 Dokümanları iki kez kontrol etmeliydim, açıkça yanlış anlamıştım. – tijko
@MarkAmery: [İyiydin, evlat, gerçekten iyi. Ama etrafta olduğum sürece, her zaman en iyisi olacaksın, bakalım?] (Http://www.imdb.com/title/tt0110475/quotes))) – georg