Какая команда проверяет из чего состоит input

У меня есть программа в которой есть поиск людей состоящих в списке. Выбирая 1 опцию, нужно вписать свою Фамилию и Имя для поиска, если Ваша фамилия есть в списке и Вы ввели только свою фамилию выйдет ошибка о том, что вы не найдены в базе из-за того, что надо вводить полностью ФИ, хотелось бы чтобы выходила также ошибка если вводить просто одно слово(Фамилию), так как там обязательно нужно и имя ,ибо например может быть несколько Ивановых

readers это список ФИ учащихся

def choice1(surname: str):
    print('Введите свою ФИ для поиска:')
    readerss = input()
    if readerss in readers:
            print('Вы найдены в базе!')
    elif readerss
    else:
        print('Ошибка!Вы не найдены в базе')
    readers = [Иванов Андрей, Камбышев Антон, Куплянов Сергей]

Ответы (1 шт):

Автор решения: cauf

Результат функции input - строка. Значит, для анализа содержимого строки вам нужно использовать методы типа строка.

Советую ознакомится с перечнем методов обработки строк - это поможет представлять, что можно сделать со строками.

В вашем случае для контроля ввода ДВУХ слов, есть смысл использовать метод split(delimeter). Выглядеть это будет примерно так:

readers = ['Иванов Андрей', 'Камбышев Антон', 'Куплянов Сергей']

def choice1():
    # здесь можно выкинуть инструкцию print и указать строку в качестве приглашения ввода
    readerss = input('Введите свою ФИ для поиска:')
    # в качестве разделителя указываем пробел
    fi = readress.split(' ')
    # проверка на наличие 2х слов
    if len(fi) != 2:
        print('ошибка! Вы ввели неверное количество слов! ФИ должно состоять из 2х слов')

    # для проверки вхождения в список, нам нужно проверить оба случая комбинации имени и фамилии (фамилия и имя при вводе могут быть перепутаны)
    #    для начала продемонстрирую самый простой и понятный способ через конкатенацию
    str_fi_1 = fi[0] + ' ' + fi[1]
    str_fi_2 = fi[1] + ' ' + fi[0]
    #    еще один способ, который делает то же самое - это называется f-строки или интерполяция
    str_fi_1 = f'{fi[0]} {fi[1]}'
    str_fi_2 = f'{fi[1]} {fi[0]}'
    # проверяем, встречается ли хоть одна из комбинаций в переменной 
    if (str_fi_1 in readers) or (str_fi_2 in readers):
        print('Вы найдены в базе!')
    else:
        print('Ошибка!Вы не найдены в базе')
→ Ссылка