2016-12-07 4 views
0
channel_total_list = [] 

get_channel_entry = int(raw_input('How many channels do you want to delete? ')) 

if get_channel_entry > 0: 

    while True: 

     user_channel_number = int(re.sub('\D', '', raw_input("Enter a channel number, (3d): "))[:3]); 
     channel_total_list.append(user_channel_number) 
     get_channel_entry = get_channel_entry - 1 

     print channel_total_list 

사용자 입력에서 채널 번호를 얻으려고합니다. 두 번째 동일한 번호를 입력하면 사용자에게 다른 번호를 입력하라고합니다.사용자가 다른 숫자를 입력하도록하십시오.

어떻게하면됩니까?

답변

1

channel_total_list에 사용자 입력을 추가 했으므로 입력이 이미 목록에 있는지 if user_channel_number in channel_total_list으로 확인할 수 있습니다.

0

중간에 if 문을 추가하기 만하면됩니다. 수정 된 코드는 다음과 같습니다. "While"은 이전 사례에서 무한대로 진행 되었기 때문에 작동하지 않았습니다.

channel_total_list = [] 
get_channel_entry = int(raw_input('How many channels do you want to delete? ')) 
leave = False 
while not leave: 
    user_channel_number = int(re.sub('\D', '', raw_input("Enter a channel number, (3d): "))[:3]) 
    if user_channel_number not in channel_total_list: 
     channel_total_list.append(user_channel_number) 
     get_channel_entry = get_channel_entry - 1 
     if get_channel_entry == 0: 
      leave = True 
    print channel_total_list