我正在学习 Invent with Python 中的刽子手类(class)。几个小时以来,我一直在努力理解下面 for 循环中的第 2 行和第 3 行。
for i in range(len(secretWord)):
if secretWord[i] in correctLetters:
blanks = blanks[:i] + secretWord[i] + blanks[i+1:]
我知道这是列表切片,但虽然我知道什么是列表切片,但我不明白为什么要使用 + 运算符。
感谢任何对此进行解释的人。
请您参考如下方法:
就是拼接字符串。
blanks = blanks[:i] + secretWord[i] + blanks[i+1:]
它将连接blank字符串直到i,secretWord的第i个字符和从i + 1到结束的blank字符串。
示例:
blanks = "Welcome"
secretWord = "WELCOME"
i = 3
print blanks[:i] + secretWord[i] + blanks[i+1:]
将打印
WelCome
所以基本上上面看到的行将 blank 的 i 处的字符替换为 secretWord 的 i 处的字符.
