Как проверить что строка состоит только из букв, цифр и пробелов python?

Ребят подскажите как проверить что имя состоит только из букв, цифр и пробелов?

        while True:
            name_product = input('Введите имя продукта(разрешается использовать только буквы и цифры)> ')
            if name_product.isspace() or name_product.isalnum():
                break
            else:
                print('Введите корректное имя продукта')

например имя может быть такое : куриное филе1


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

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

Вы должны проверить, что все символы введённого названия соответствуют вашим критериям (пробел, буква или цифра), соответственно, код проверки можно преобразовать так:

    if all(x.isspace() or x.isalnum() for x in name_product):
        break

Т.е. перебираем все символы названия через for, каждый символ проверяем вашим условием isspace or isalnum, и проверяем, что все эти условия выполнились одновременно с помощью функции all.

→ Ссылка