перечислить новый список слов, в котором слова соответствуют заданному префиксу (вопрос понимания Python) - PullRequest
0 голосов
/ 01 октября 2018

Мне нужна помощь, чтобы задать следующий вопрос в python.1.функция с именем start_with (префикс, список слов), которая принимает в качестве входных данных префикс строки и список слов списка строк, и использует понимание списка, чтобы вернуть список, состоящий из всех слов из списка слов, начинающихся с префикса.

То, что я сделал, это

def starts_with (prefix, wordlist):
    if prefix == wordlist[0][:len(prefix)]:
    return [wordlist[0]]+ starts_with(prefix,wordlist[1:])

Я только что узнал, что это не ошибка и не понимание.Я понятия не имею, как мне сделать это в понимании.

Ответы [ 3 ]

0 голосов
/ 01 октября 2018

Или filter:

def starts_with(prefix, wordlist):
    return list(filter(lambda x: x.startswith(prefix),wordlist))
0 голосов
/ 01 октября 2018
def starts_with(prefix, wordlist):
        wordswithPrefixList =[]
        for word in wordlist:
            if word.startswith(prefix):
                wordswithPrefixList.append(word)

        return wordswithPrefixList
print(starts_with("test", ["test2","test1","sfsdf"]))
0 голосов
/ 01 октября 2018

Вы можете использовать понимание списка следующим образом:

def starts_with(prefix, wordlist):
    return [word for word in wordlist if word.startswith(prefix)]
...