質問編集履歴
3
誤字
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
入力されたテキストのリストから、頻度上位10位までの単語とその出現回数を辞書型で出力したいです。
|
2
2
|
以下のコードでは、上から順番に10単語を出力することはできていますが、同率順位を考慮できていません。
|
3
|
-
例えば、頻度
|
3
|
+
例えば、頻度9位の単語が同率で5単語存在する場合(8位までは同率なし)は、1位から同率9位までの13単語を出力したいです。
|
4
4
|
よろしくお願いいたします。
|
5
5
|
|
6
6
|
```Python
|
2
文法の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,7 +5,6 @@
|
|
5
5
|
|
6
6
|
```Python
|
7
7
|
def top_ten(list_txt):
|
8
|
-
a_list = []
|
9
8
|
list_lower = []
|
10
9
|
for w in list_txt:
|
11
10
|
list_lower.append(w.lower())
|
1
文法の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -9,10 +9,7 @@
|
|
9
9
|
list_lower = []
|
10
10
|
for w in list_txt:
|
11
11
|
list_lower.append(w.lower())
|
12
|
-
for w in list_lower:
|
13
|
-
if len(w) >= 4:
|
14
|
-
a_list.append(w)
|
15
|
-
a_dict = dict((i,
|
12
|
+
a_dict = dict((i, list_lower.count(i)) for i in list_lower)
|
16
13
|
a_tp = sorted(a_dict.items(), key=lambda x:x[1], reverse=True)
|
17
14
|
del a_tp[10:]
|
18
15
|
a_dict = dict(a_tp)
|