2017-03-01 1 views
0

は何もしないでリスト2の中に現れます。私はこれを思いついたが、うまくいかない。私はカウントを使いたくありません。リスト1の数字がリスト2の中で何回表示されているかを調べるためにこのコードを書くことをcount()

list1 = [4,7,2] 
list2 = [2,3,4,2,5,6,3,2,6,7,3,4] 
def compare(list1, list2): 
    freq = ([i for i in list1 if i == num]) 
    return 
print('The number 4 occurs in list2', freq, 'times') 
print('The number 7 occurs in list2', freq, 'times') 
print('The number 2 occurs in list2', freq, 'times') 
+0

カウントにリスト内のすべての番号の出現回数を含む辞書を作成するヘルパー関数を作成します。 '例えば、[1,1,1,2,2,3]を指定すると、辞書' {3:1、2:2、1:3} 'が返されます。次に、両方のリストでこの関数を呼び出してカウントを取得し、辞書が等しいかどうか比較します。 – Alexander

答えて

0

私は、
私は質問を理解していることを完全にはよく分からないが、あなたは対話型プログラムのためにそれを必要とする場合、それが遅くなることがあればけれども、このコードは、動作しているようです。
これが役立つことを願っています!

list1 = [4,7,2] 
list2 = [2,3,4,2,5,6,3,2,6,7,3,4] 
occurrences = [0,0,0] 
for i in range(len(list1)): 
    for j in list2: 
     if list1[i] == j: 
      occurrences[i]+=1 
print occurrences 
+0

'O(N^2)'が痛いです。 – Alexander

+0

ありがとうございます@anonymous_hacker – Supernova

0

これを試してみてください。

list1 = [4,7,2] 
list2 = [2,3,4,2,5,6,3,2,6,7,3,4] 
occurrences = [0,0,0] 
for i in range(len(list1)): 
    for j in list2: 
     if list1[i] == j: 
      occurrences[i]+=1 
print occurrences 
関連する問題