变量.split()命令问题



我正在尝试创建一个程序,让用户从给定的句子中输入一个单词,我的代码会给他们这个单词的位置。例如,如果用户输入单词"pizza",我的程序应该输出"4th position"作为响应。我是python的新手,所以非常感谢所有的帮助!到目前为止我所拥有的:

food = "i love Italian pizza"
food2 = food.split()
for x in list(food2)

您想要的是list.index()

food = "i love Italian pizza"
food2 = food.split()
index = food2.index("Italian")
print str(index + 1) + " position"

将带有用户输入的变量放在"意大利语"所在的位置。

用于用户输入:

try:
  c = raw_input('Enter Word: ')
  index = food2.index(c)
  print str(index + 1) + " position"
except ValueError as E:
  print "Not in list"

您就快到了。使用您现有的代码,您可以这样做:

# Query the user:
word = str(raw_input("Enter Word: "))
food = "i love Italian pizza"
food2 = food.split()
for (num, x) in enumerate(list(food2)):
  if word == x:
    print num

其中:

  • enumerate将列表转换为元组(0,"i"),(1,"love"),"2,"Italian"),(3,"pizza")

try:

food = "i love Italian pizza"
print food.split().index("pizza") + 1

您需要这样写:

def test():
    words = 'i love Italian pizza'.split()
    word = str(raw_input())
    if word in words:
        print 'position = ', words.index(word)+1
    else:
        print 'word not found'

最新更新