[英]How to replace a letter in string by position in python 3.x
我正在嘗試創建一個“劊子手”游戲。 為此,我需要將玩家試圖猜測的單詞,並將他們尚未猜到的所有字母變成" _ "
所以假設我有:
letters_guessed = [q, r, u, a, p]
secret_word = "dragon"
我怎樣才能把它變成: _ r a _ _ _
?
這里有幾種可能的解決方案,一個是:
letters_guessed = ["q", "r", "u", "a", "p"]
secret_word = "dragon"
output = ""
for char in secret_word:
if char in letters_guessed:
x = char
else:
x = "_"
output += x
print(output)
# Output: _ra___
之后將其放入 function 中:
def hangman(word, guessed):
output = ""
for char in word:
if char in guessed:
x = char
else:
x = "_"
output += x
return output
或者,您可以完全使用列表推導:
letters_guessed = ["q", "r", "u", "a", "p"]
secret_word = "dragon"
secret_list = "".join([char if char in letters_guessed else "_"
for char in list(secret_word)])
print(secret_list)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.