sentence='ASK NOT WHAT YOUR COUNTRY CAN DO FOR YOU ASK WHAT YOU CAN DO FOR YOUR COUNTRY'
word=[]
pos=0
choice=''
while choice!='q':
print(sentence)
word=sentence.split(' ')
choice=input('what word do you want to find').upper()
for pos in range(len(word)):
if choice==word[pos]:
print('The word ' + str(choice)+ ' occurs in the ' + str(pos +1) + ' th position ')
我有这段代码向用户输出他们试图找到的单词的位置。我有代码工作,但对于我的评价我真的不知道如果选择== word [pos]:的工作原理。如果有人能向我解释这一点,将非常感激
答案 0 :(得分:0)
循环句子中的所有单词位置,并比较输入单词是否与此位置中的单词相同。例如,如果pos为2,则查看句子中的第三个单词,看它是否等于输入单词。如果是你打印这个给定的陈述。
单词对象是一个在分隔空格后看起来像这样的列表(''):
'eFile' => [
'required', 'min:2', 'max:200',
'regex:/^(?!\.)(?!com[0-9]$)(?!con$)(?!lpt[0-9]$)(?!nul$)(?!prn$)[^|*?\\:<>\/$"]*[^.|*?\\:<>\/$"]+$/',
'unique:nsa_fileuploads,filename,' . $id . ',fileid'
]
答案 1 :(得分:0)
for pos in range(len(word)):
你正在迭代这个位置,首先是pos = 0,然后是pos = 1等。
word[pos]
是pos位置的单词(因为你将句子分成单词列表)。
所以当你检查:
choice==word[pos]
你检查选择是否在位置上。
希望有帮助
答案 2 :(得分:0)
最初pos设置为0。 说你的搜索词是国家。 您将搜索词存储在选择变量中,并带有语句
choice=input('what word do you want to find').upper()
单词将是一个包含句子中单词的对象数组。
word = sentence.split('')
您正在语句
中执行从0到单词长度的for循环for pos in range(len(word)):
if choice==word[pos]:
上述语句只是两个字符串之间的比较语句。在我们的示例中,choice = COUNTRY,word [0] = ASK,因此它将跳过并移至下一次迭代,直到选择和单词[pos]匹配。
此处,pos值是您搜索的字符串的位置。
希望它能消除你的怀疑。