列出与给定前缀匹配的单词的新单词表(python 理解问题)
Posted
技术标签:
【中文标题】列出与给定前缀匹配的单词的新单词表(python 理解问题)【英文标题】:list new wordlist in which words match given prefix (python comprehension question) 【发布时间】:2018-10-01 05:15:38 【问题描述】:我需要一些帮助才能在 python 中提出以下问题。 1. 名为starts_with(prefix, wordlist) 的函数将字符串前缀和字符串列表作为输入,并使用列表推导返回一个列表,该列表由单词列表中以前缀开头的所有单词组成。
我做的是
def starts_with (prefix, wordlist):
if prefix == wordlist[0][:len(prefix)]:
return [wordlist[0]]+ starts_with(prefix,wordlist[1:])
我刚刚发现这既不是错误也不是理解。我不知道我应该如何理解。
【问题讨论】:
能否请您解释一下“既不是错误也不是理解”? 【参考方案1】: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"]))
【讨论】:
请在代码中添加一些解释,这将有助于使您的答案更全面。【参考方案2】:您可以像这样使用列表推导:
def starts_with(prefix, wordlist):
return [word for word in wordlist if word.startswith(prefix)]
【讨论】:
【参考方案3】:或filter
:
def starts_with(prefix, wordlist):
return list(filter(lambda x: x.startswith(prefix),wordlist))
【讨论】:
以上是关于列出与给定前缀匹配的单词的新单词表(python 理解问题)的主要内容,如果未能解决你的问题,请参考以下文章