Моя идея состояла в том, чтобы создать скрипт, в котором я запускаю несколько имен из списка, а затем сравниваю, если он находится в old_list
.Если его нет в списке, мы выводим имя или вызываем функцию.В противном случае, если его нет в списке, я просто жду 5-15 секунд и снова проверяю, добавлено ли что-либо.
Однако моя проблема сейчас заключается в том, что у меня есть список со случайными именами:
names.txt
Craig
Rebekah
Zina
Stella
Zachary
Ila
Delsie
Mauro
Alba
Antoniette
.... more
Используя этот скрипт:
def script():
old_list = []
old_names_list = [line.rstrip('\n') for line in open('names.txt')]
while True:
new_names_list = [line.rstrip('\n') for line in open('newnames.txt')]
#if new name added to the list, then we call a random function,
#for example: def hello() or we can just print out the name
#and we continue to do the below.
for names in old_names_list:
if names not in old_list:
print(names)
#Call a random function etc def hello():
old_list.append(names)
else:
randomtime = random.randint(5, 15)
print('No new names fouund! - retrying in {} secs'.format(randomtime))
time.sleep(randomtime)
newnames.txt
Rebekah
Zina
Stella
Прямо сейчас он распечатывает все имена в списке, а затем добавляет его в old_list
, и для следующего поиска в цикле for он не будет распечатывать имя, поскольку он находится внутри old_list
.Однако я хочу, чтобы он проверял new_names_list
, добавил ли он новое имя в список.Если это так, он должен найти, находится ли имя внутри names.txt, а затем распечатать добавленное имя.
Вывод:
Prints out all the names and continue the while True loop.
*Adding Craig to newnames.txt*
print("Found Craig in the old_list!")
continue to search if new names got added.