Если в списке 2 есть два случайных элемента list1, так? - PullRequest
0 голосов
/ 07 декабря 2018

Как выполнить это условие с помощью If_statament: «Если в списке 2 есть два случайных элемента из списка1»

    cp1=[2,4,5,7,9,10,12,-2,-4,-5,-7,-9,-10,-12]

import itertools


for i in itertools.product((1,3,5,6,8,10,12), repeat=3) :
        i_suba1 = i[0] -  i[1]
        i_suba2 = i[0] -  i[2]
        i_subb1 = i[1] - i[2]



        allsub =  (i_suba1,  i_suba2, i_subb1)
        if  cp1 in allsub >=2 :# HERE, I WANT TO SAY " if two random elements of cp1 are in allsub print stuff"

              print (i,allsub)

1 Ответ

0 голосов
/ 07 декабря 2018

Мне немного непонятно, что вы подразумеваете под случайным словом "случайные элементы" здесь, но я понимаю, что вы хотите выяснить, являются ли любые два элемента общими для двухсписки.Это можно сделать, найдя пересечение двух списков и увидев, насколько он велик.Есть различных методов для этого , но я бы просто использовал понимание списка:

intersection = [x for x in list1 if x in list2]

Чтобы проверить, соответствует ли оно вашим критериям, вы можете затем сделать len(intersection) == 2 или len(intersection) >= 2 в зависимостио том, хотите ли вы ровно два, два или более элементов в обоих списках.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...