所以标题可能没有意义。但这里是代码:将某些内容添加到字符串后,如何打印修改以及字符串的其余部分?
def play_game(ml_string, blanks, selectedLevel):
replaced = []
ml_string = ml_string.split()
currentQuestion = 0
for blank in ml_string:
replacement = blank_in_quiz(blank, blanks,)
if replacement != None:
user_input = raw_input("Type in the answer for blank " + replacement + " ")
while user_input != allanswers[selectedLevel][currentQuestion]:
print "Incorrect!"
user_input = raw_input("Type in the answer for blank " + replacement + " ")
else:
blank = blank.replace(replacement, user_input)
replaced.append(blank)
print "\nCorrect!\n"
print " ".join(replaced + [currentQuestion,ml_string])
currentQuestion = currentQuestion + 1
else:
replaced.append(blank)
replaced = " ".join(replaced)
print replaced
本质上讲这确实是拿这个字符串,这是ml_string:
"The movie __1__ is a war movie directed by __2__ Nolan about the __3__ and French armies stranded on the __4__ of Dunkirk while the __5__ army closed in on them."
而且一旦用户将正确答案空白,我想打印将答案填在空白处,以及其余的测验中还有他们尚未回答的空白。
我是python的初学者,但我一直在努力处理列表和索引值。如果您想查看整体:https://repl.it/KTJh/16
55行是我遇到的麻烦。感谢您的任何建议。
一个正则表达式可能会工作,但你有种做这是一个过于复杂的方式。我可能会单独存储完整的字符串,然后只在需要打印时才添加“下划线填充符”。我可以看到,比试图替换现有字符串的位更容易。 – Carcigenicate
@Carcigenicate这很有趣。我将尽力实现 – louielouielouie
这样,一旦用户获得了正确的答案,您可以用正确的答案替换填充程序。我想尽量详细说明,但我刚刚离开夜班,感到脑死亡。祝你好运。 – Carcigenicate