Слова, содержащие заданные буквы - PullRequest
0 голосов
/ 04 октября 2019

Я пытаюсь решить задачу со следующим содержанием:

Создать функцию, которая извлекает слово и строку из требуемых букв и возвращает True, если слово содержит все требуемые буквы хотя бы один раз.

Мой код выглядит так:

def uses_only(letters, word):
    letters = str(input("Enter letters : "))
    word = str(input("Enter word : "))

    if letters in word:
        print("T")
    else:
        print("F")

uses_only(input, input)

Но он не работает должным образом, потому что он возвращает F, если буква встречается в слове более одного раза. Я искал в интернете, но не нашел ничего, что могло бы мне помочь. Может кто-нибудь объяснить мне, как правильно решить эту задачу?

Ответы [ 2 ]

0 голосов
/ 04 октября 2019

Вы также можете сделать это таким образом, вероятно, это то, что вы пытались:

def uses_only(letters, word):
    letters = str(input("Enter letters : "))
    word = str(input("Enter word : "))

    for letter in letters:
        if letter not in word:
            return False
    return True

print (uses_only(input, input))
0 голосов
/ 04 октября 2019

Я не уверен, что понял, что вы пытаетесь сделать.

Это возможное решение: функция проверяет, существует ли каждая буква хотя бы один раз в слове.

def f(word, letters):
    return all(l in word for l in letters)

Например:

f("information", "oat") # true
f("information", "zfa") # false
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...