私の例(リストa、bは常に同じ大きさ):コードのみリストAを介して見えるようにここでPython 3.6 - それ以外の場合に動作する条件はありますか?
a = ['12','12','12','12','12','23','24','24','31','31']
b = ['1','2','2','2','2','2','5','5','5','5']
c = a, b
は、そうでない状態のようなものを必要とする私のコード、C [0]です両方のリストではなく、条件に適合するリストaとbの結果を表示します。 このコードで他の条件が間違っていると私は代替を考えるカント:
d = list(zip(*[(ai,bi) for ai, bi in zip(a,b) if c[0].count(ai) == 5 else 2]))
e = list(zip(*[(ai,bi) for ai, bi in zip(a,b) if c[0].count(ai) == 7 else 2]))
が、私の例では2つの以上のカウントがある場合、それは5のみカウントを出力するように条件を変更することは可能です?または、7が最初のカウントであっても検出されない場合は、2のカウントだけを出力しますか?
私の希望する結果:
d = [('12','12','12','12','12',), ('1','2','2','2','2')]
e = [('24','24','31','31'), ('5','5','5','5')]
ありがとうございます!
なぜ 'C [0] .count(...)'あなただけの '' a.count(...)を行うことができますか? –
'count()'を繰り返し呼び出すことは*高価です。最初に 'Counter()'を作成し、そのオブジェクトのインスタンスを使用してください。 –
こんにちは私は、コードがリストを見て、5つの繰り返し番号がある場合のカウントを意味します。それがあれば、5つの数字が印刷されます。別のケースでは、7つの繰り返し番号があるかどうかを確認します。それがあればそれは7つの数字を印刷しますが、7がない場合は、2つのカウントを持つ数字だけが表示されます。 –