import random
members = 3
participants=["Alex","Elsie","Elise","Kimani","Ryan","Chris","Paul"]
random.shuffle(participants)
for i in range(len(participants) // members + 1):
print('Group {} consists of:'.format(i + 1))
group = participants[i*members:i*members + members]
for participant in group:
print(participant)
import random
participants=["Alex","Elsie","Elise","Kimani","Ryan","Chris","Paul"]
group=1
membersInGroup=3
for participant in participants[:]: # only modification
if membersInGroup==3:
print("Group {} consists of;".format(group))
membersInGroup=0
group+=1
person=random.choice(participants)
print(person)
membersInGroup+=1
participants.remove(str(person))
这取决于列表的类型。代码有问题
for participant in participants:
而是使用
for participant in participants[:]:
尽管pylangs' answer就足够了,但这是另一种解决问题的方法:
这个问题正在发生变化,因为这个列表正在发生变化。解决这个问题有几个选择。一个需要对现有代码和思维过程进行少量修改的选项是对列表的一个副本进行变异,例如,
participants[:]
生成一个副本。在使用您的代码:
样本输出:
^{pr2}$相关问题 更多 >
编程相关推荐