Python- 如何形成2个列表的随机分区
Python- How to form a random partition of 2 lists
有谁知道如何在 python 中形成 2 个列表(List1 和 List2)的随机分区?列表不必具有相同的大小。
例如:
S = [1,2,3,4,5,6,7]
List1=[3,6,1,2]
List2=[5,4,7]
或
List1 =[3,5]
List2=[1,2,4,7,6]
我不确定关于随机性和分区的规则是什么,但这应该可以帮助您入门:
import random
s = [1,2,3,4,5,6,7]
random.shuffle(s)
cut = random.randint(0, len(s))
list_1 = s[:cut]
list_2 = s[cut:]
print list_1
print list_2
我会推荐:
- 随机排列或重新排列列表
- 然后选择分解列表的随机索引
代码:
import random
S = [1,2,3,4,5,6,7]
random.shuffle(S)
index = random.randint(0, len(S))
List1 = S[index:]
List2 = S[:index]
不确定您有哪些模块,但这是一个可以满足您需要的功能。
import random
def split(S):
x = random.randint(0,len(S))
y = len(S)-x
S1 = S[0:x]
S2 = []
for i in range(len(S)):
if S[i] not in S1:
S2.append(S[i])
return S1,S2
有谁知道如何在 python 中形成 2 个列表(List1 和 List2)的随机分区?列表不必具有相同的大小。 例如:
S = [1,2,3,4,5,6,7]
List1=[3,6,1,2]
List2=[5,4,7]
或
List1 =[3,5]
List2=[1,2,4,7,6]
我不确定关于随机性和分区的规则是什么,但这应该可以帮助您入门:
import random
s = [1,2,3,4,5,6,7]
random.shuffle(s)
cut = random.randint(0, len(s))
list_1 = s[:cut]
list_2 = s[cut:]
print list_1
print list_2
我会推荐:
- 随机排列或重新排列列表
- 然后选择分解列表的随机索引
代码:
import random
S = [1,2,3,4,5,6,7]
random.shuffle(S)
index = random.randint(0, len(S))
List1 = S[index:]
List2 = S[:index]
不确定您有哪些模块,但这是一个可以满足您需要的功能。
import random
def split(S):
x = random.randint(0,len(S))
y = len(S)-x
S1 = S[0:x]
S2 = []
for i in range(len(S)):
if S[i] not in S1:
S2.append(S[i])
return S1,S2