![](/img/trans.png)
[英]How to check if the characters in the corresponding positions in the second string are repeating in same position like in first string? Educative EXAM
[英]How to check if one string's characters exist and are in the same position as those in another string?
我有一个包含此字符串的字符的列表:
wordtoguess = ['T','R','A','N','S','M','I','S','S','I','O','N' ]
我让用户猜一个单词,并将其存储在变量“ guessed”中。 我也有一个名为'correct_chars'的变量,它等于0。
猜想= input()
correct_chars = 0
当用户猜出一个单词时,我希望Python遍历该单词的每个字符,如果该单词存在且与词条对话中的相应字符位于同一位置,则将1添加到correct_chars中。 例如,如果用户输入了字符串“ translations”,则correct_chars等于5。到目前为止,我还无法弄清楚该怎么做。
这是一个潜在的实现:
>>> wordtoguess = "TRANSMISSION"
>>> guessed = "TRANSLATIONS"
>>> correct_chars = sum(1 for (x, y) in zip(wordtoguess, guessed) if x.lower() == y.lower())
>>> correct_chars
5
guessed = input()
correct_chars = 0
wordtoguess = ['T', 'R', 'A', 'N', 'S', 'M', 'I', 'S', 'S', 'I', 'O', 'N']
for i, c in enumerate(guessed):
try:
if c.upper() == wordtoguess[i]:
correct_chars += 1
except IndexError:
pass
print(correct_chars)
这是一个可能的解决方案
guessed = input()
correct_chars = 0
wordtoguess = ['T', 'R', 'A', 'N', 'S', 'M', 'I', 'S', 'S', 'I', 'O', 'N']
for i in range( len(wordtoguess) ):
if i >= len(guessed):
break
if wordtoguess[i] == guessed[i]:
correct_chars = 0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.