我正在制作一个程序,有人必须填写一个单词的空白。应该用给定的猜测填充正确的空白,然后该列表继续进行,以便他们可以继续猜测10次尝试。这是一个相对简单的代码。
var department = Mapper.Map<DepartmentEntity, DepartmentViewModel>(departmentEntity,
opt => opt.AfterMap((src, dest) => dest.Label = src.Labels.FirstOrDefault(x=>
x.CultureInfo.Name == user.Culture.Name)?.Value));
基本上,我的程序不会多次打印一封信。
E.g。如果我输入“n”,它将不会多次打印“n”,即使“n”在“nonagon”中出现3次。我假设它在“nonagon”中看到第一个“n”,并且只看到那个。
即使他们重复,我怎么会打印信件呢?
答案 0 :(得分:2)
wordlist.index(i)
在每次迭代中返回i
中wordlist
的相同(第一次)出现,而不是将for循环替换为:
for p, i in enumerate(wordlist):
if i == guess:
blanks[p]=guess
attempts-=1
答案 1 :(得分:0)
word = "nonagon"
guessword = ""
for i in word:
guessword += "_"
for i in range(10):
guess = raw_input("Take a guess: ")
guess = guess[0]
new_guessword = ""
j = 0
for ch in word:
if guess == ch:
new_guessword += ch
else:
new_guessword += guessword[j]
j += 1
guessword = new_guessword
if word == guessword:
print("You solved it!!")
else:
print(guessword)