python—以全面的方式编写此语句

4ktjp1zp  于 2021-08-25  发布在  Java
关注(0)|答案(3)|浏览(331)

我开始学习python和编程。在进行语句评估测试时,我遇到了一个对我来说毫无意义的语法问题。我在第二行中得到一个语法错误。
非常感谢。

st = 'Print only the words that start with s in this sentence'
listst = st.split()
for word in listst:
    if word[0] == 's':
        print(word)

# in one sentence?

startwiths = [word if word[0] == 's' for word in listst]
jtjikinw

jtjikinw1#

试试这个:

startwiths = [word for word in listst if word[0] == 's']

关于python中的列表理解的更多信息可以在这里找到

eoxn13cs

eoxn13cs2#

这个 if 语句位于列表的末尾。因此,请将最后一行改写为:

startwiths = [word for word in listst if word[0] == 's']

您还可以通过替换 word[0] == 's' 用内置的绳子 startswith 功能:

startwiths = [word for word in listst if word.startswith('s')]

我希望这是有帮助的!

q5iwbnjs

q5iwbnjs3#

list_comp=[word for word in listst if word.lower()[0]=='s']

你也可以使用 .startswith ```
list_comp=[word for word in listst if word.lower().startswith('s')]

相关问题