我是Python的初学者,正在努力编写我的第一个程序。我正在尝试创建一个游戏,游戏需要猜一个硬编码的句子
mystery_sentence='All things excellent are as difficult as they are rare'
def printGuessedLetter():
print("This is the sentence to guess: " + ''.join(userGuesslist))
for n in mystery_sentence:
userGuesslist.append('█')
printGuessedLetter()
上面的代码返回:
这是要猜测的句子:█████████████████████████████████████████████████████
下面是上面的一段代码:
letter = input("> Enter a letter:\n>> ").lower()[0]
if letter in userGuesses:
print("You've already submitted this letter")
else:
attempts -= 1
userGuesses.append(letter)
if letter in mystery_sentence:
print("\nNice guess")
if attempts > 0:
print("You have ", attempts, "remaining attempt")
for i in range(len(mystery_sentence)):
if letter == mystery_sentence[i]:
letterIndex = i
userGuesslist[letterIndex] = letter.upper()
printGuessedLetter()
由于“猜测”一句包含空格,我认为玩家更容易看到以下内容:██ ██████ █████████ ███ ██ █████████ ██ ████ ███ ████
然后,当玩家提交一封信时,它会如下所示:
下面是要猜测的句子: ██ ██████ █████████ A.██ A.█ █████████ A.█ ████ A.██ █A.██
等等
但是,我无法用完整块替换空格字符。我不确定list.append是正确的函数
有人有什么建议吗
可以使用re.sub替换所有非空白(
\S
)字符:如果您确实希望将此作为列表:
没有正则表达式的另一个选项:
或者,如果您真的想要列表而不是字符串:
正则表达式对于您的问题来说是一种过分的手段。在用块字符替换其他字符时保留空格的简单方法是
另外,请注意
letterIndex
变量在代码中是多余的(您可以只保留i
)也许这会有帮助。可以将Unicode字符用于块here is link
您可以像这样打印多个文件:
您也可以这样做:
相关问题 更多 >
编程相关推荐