Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+2

Как сделать так, чтобы номера студенческих билетов не пропадали? (пропадают т.к. в словаре элементы не повторяются)

12345678910111213
 import random  
d = 2      #Количество студентов  
  
sp1 = []  
sp2 = []  
for i in range(d):  
    a = random.randint(100,999)     #случайный номер студ. билета 
    sp1.append(a)  
    b = str(input('Введите Фамилию и Имя: '))  
    sp2.append(b)  
  
slov = dict(zip(sp1,sp2))  
print(slov) 
По дате
По рейтингу
Аватар пользователя
Новичок

НЕ использовать randint:

1234
 sp1 = random.sample(range(100, 1000), d)
sp2 = []
for _ in range(d):
    sp2.append(input('Введите Фамилию и Имя: ')) 

ЗАЧЕМ ты снова и снова пишешь бессмысленное str(input('...'))?

Аватар пользователя

Да хоть так:
import random
d = 10
b = list(range(100, 1000))
slov = dict()
for i in range(d):
slov[b.pop(random.randrange(len(b)))] = input('Введите Фамилию и Имя: ')
print(slov)