Skip to main content
 首页 » 编程设计

python之用户仅输入一次列表理解

2025年05月04日27findumars

下一行查找单词在句子中的位置:

print([i+1 for i in range(6) if a.split()[i] == b]) 

a 是句子的字符串(例如 "hello world this is a sentence""),并且
b 是要在句子中查找的词(例如 “world”)
该程序可以运行,但我希望 b 成为用户输入,同时将程序保持在一行中。这可能吗? 谢谢 :)
编辑:我的意思是只应提示用户一次输入。将 b 替换为 input() 将在多次找到该单词时提示多次。

请您参考如下方法:

只需将嵌入式列表理解与单个 input() 项一起使用即可。

print([i+1 for b in [input()] for i in range(6) if a.split()[i] == b]) 

例子:

>>> print([i+1 for b in [input()] for i in range(6) if a.split()[i] == b]) 
world 
[2]