我正在用 python 做一個劊子手游戲,我被困在我有一個隨機生成的詞的部分,我試圖通過用這樣的破折號替換所有字符來隱藏這個詞:
生成字 -> 'abcd' 隱藏字 -> _ _ _ _
我做了以下作業:
string = 'luis'
print (string.replace ((string[i]) for i in range (0, len (string)), '_'))
它給了我以下錯誤:
^
語法錯誤:生成器運算式必須加括號
請給我一些型別
uj5u.com熱心網友回復:
您可以嘗試一種非常簡單的方法,如下所示:
word = "luis"
print("_" * len(word))
輸出將是:
>>> word = "luis"
>>> print("_" * len(word))
____
>>> word = "hi"
>>> print("_" * len(word))
__
uj5u.com熱心網友回復:
最簡單的是:
string = "luis"
"_" * len(string)
# '____'
如果你想中間有空格:
" ".join("_" * len(string))
# '_ _ _ _'
但是,由于您稍后需要顯示猜測的字符,因此最好首先從生成器開始:
" ".join("_" for char in string)
# '_ _ _ _'
以便您可以輕松插入猜測的字符:
guessed = set("eis")
" ".join(char if char in guessed else "_" for char in string)
# '_ _ i s'
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/335387.html
