Python 2.7 如何避免重复打印列表中随机选择的名称(Python)

Python 2.7 如何避免重复打印列表中随机选择的名称(Python),python-2.7,duplicate-data,Python 2.7,Duplicate Data,这个程序打印从列表中生成的重复名称。请帮我清除它。我为它添加了一个运算符,但它不起作用 #Subscriber Selector import random print "Welcome to Subscriber Picker" sub_list = ["Ali Abbas","Ansar Abbasi","Hasan Abidi","Saadia Afzaal","Iqbal Ahmad","Iftikhar Ahmad","Khaled Ahmed","Ahmed Tamim"

这个程序打印从列表中生成的重复名称。请帮我清除它。我为它添加了一个运算符,但它不起作用

#Subscriber Selector
import random
print "Welcome to Subscriber Picker"
sub_list = ["Ali Abbas","Ansar Abbasi","Hasan Abidi","Saadia Afzaal","Iqbal       Ahmad","Iftikhar Ahmad","Khaled Ahmed","Ahmed Tamim","Maulana Mahboob Alam","Malik Barkat Ali"]

def add_list():
    input_1 = int(raw_input("How many new users do you want to add? "))
for z in range (0,input_1):
    sub_list.append(raw_input ("Enter Name" +" "+ str(z+1) + ":"))
return
add_list()

def generator():
 input_2=int(raw_input("How many subscribers to generate? "))
 print "-----"
 index=0
 temp_list = []
 ran_name = random.randint(0, len(sub_list)-1)
 temp_list.append(sub_list[ran_name])
 while len(temp_list) < input_2:
      ran_name=random.randint(0,len(sub_list)-1)
      temp_list.append(sub_list[ran_name])
      if(temp_list[index] == temp_list[index+1]):
          temp_list.pop(index)       
      else:
          index = index + 1
 for x in temp_list:
      print x        
 print"-----"
 return
#订户选择器
随机输入
打印“欢迎使用订户选择器”
次级清单=[“阿里·阿巴斯”、“安萨尔·阿巴斯”、“哈桑·阿比迪”、“萨迪亚·阿法扎尔”、“伊克巴尔·艾哈迈德”、“伊夫蒂哈尔·艾哈迈德”、“哈立德·艾哈迈德”、“艾哈迈德·塔米姆”、“毛拉娜·马布布·阿拉姆”、“马利克·巴卡特·阿里”]
def add_list():
input_1=int(原始输入(“您要添加多少新用户?”)
对于范围内的z(0,输入_1):
sub_list.append(原始输入(“输入名称”+“”+str(z+1)+:”)
返回
添加列表()
def生成器():
input_2=int(原始输入(“要生成多少订阅者?”)
打印“-----”
索引=0
临时列表=[]
ran\u name=random.randint(0,len(子列表)-1)
临时列表。追加(子列表[运行名称])
而len(临时列表)<输入2:
ran\u name=random.randint(0,len(子列表)-1)
临时列表。追加(子列表[运行名称])
如果(临时列表[索引]==临时列表[索引+1]):
临时列表pop(索引)
其他:
索引=索引+1
对于临时列表中的x:
打印x
打印“-----”
返回
生成器()

给你:

temp_list = random.sample( sub_list, input_2 )

@DSM事实上,除了缩进现在是错误的以外,这是字面上相同的代码。有人能回答吗?@senshin:除了现在删除的问题实际上在评论中比这个问题有更多的信息,所以更好-/当len(temp_list)你真的试过我的建议了吗?这里有文档记录:上面的解决方案似乎完全符合您的要求,不会创建重复项。基本上,我希望避免在输出中打印重复的名称,我在下面创建了此操作,但这不起作用!除了我的程序中提到的以外,我不能使用操作符和库!而len(temp_list)