Создание телефонной книги с random

scopiii

Новичок
Пользователь
Май 1, 2021
4
0
1
Проблема в том, что я не знаю в чём проблема)
Код:
from random import randint

names = ['Abraham', 'Adam', 'Adrian', 'Albert', 'Alexander', 'Alfred', 'Anderson', 'Andrew', 'Anthony', 'Arnold', 'Arthur']
surnames = ['Smith', 'Johnson', 'Williams', 'Jones', 'Brown', 'Davis', 'Miller', 'Wilson', 'Moore', 'Taylor', 'Anderson']
telephone = []
search = []
def create_telephone():
    ran_num = str(randint(1000000000, 9999999999))
    telephone.append(ran_num)
    if ran_num in telephone:
        del telephone[-1]
    ran_num = 0
for i in range(20):
    create_telephone()
def create_person():
    search.append({'name': names[randint(0, len(names)-1)], 'surname': surnames[randint(0, len(surnames)-1)], 'age': randint(20, 102), 'telephone': telephone[randint(0, len(telephone)-1)]})
for i in range(20):
    create_person()

Пожалуйста, помогите понять, в чём тут ошибка
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 589
459
83
ошибка в том что список telephone пустой всегда...
вы сначала добавляете элемент в список, а потом проверяете есть ли он там...
конечно он там есть...
и удаляете его...
гениально)

upd
наверное вы хотели так
Python:
from random import randint

names = ['Abraham', 'Adam', 'Adrian', 'Albert', 'Alexander', 'Alfred', 'Anderson', 'Andrew', 'Anthony', 'Arnold',
         'Arthur']
surnames = ['Smith', 'Johnson', 'Williams', 'Jones', 'Brown', 'Davis', 'Miller', 'Wilson', 'Moore', 'Taylor',
            'Anderson']
telephone = []


def create_telephone():
    ran_num = str(randint(1000000000, 9999999999))
    if ran_num not in telephone:
        telephone.append(ran_num)


for i in range(20):
    create_telephone()


def create_person():
    search = {'name': names[randint(0, len(names) - 1)], 'surname': surnames[randint(0, len(surnames) - 1)], 'age': randint(20, 102), 'telephone': telephone[randint(0, len(telephone) - 1)]}
    return search


for i in range(20):
    print(create_person())
 
Последнее редактирование:
  • Мне нравится
Реакции: scopiii

Форум IT Специалистов