1–30个数逢9取15个数
法一
list2 = []
count = 0
list1 = list(range(1,31))
print(list1)
while len(list2) <15:
list3 = list1.copy()
for i in list3:
count = count +1
if count == 9:
list1.remove(i)
list2.append(i)
count = 0
print(list2)
法二
#创建所有人员的编号列表
per_list = list(range(1, 31))
off_list = [] #需要下船的人员编号列表
count = 1 #循环数数,从1数到9
i = 0 #循环列表
while len(per_list) > 15:
if count == 9:
#为下船人员,追加至off_list
count = 1 #计数循环
off_list.append(per_list.pop(i))
#如果此时count=9,而i正好指向列表的最后一个元素,需特殊处理
if i == len(per_list):
i = 0
else:
count += 1
i += 1
if i == len(per_list):
i = 0
#显示出需要下船的人员编号
print("下船人员:", *off_list)```