假设rand_word
是字符串= 'petite'
和guess
是单个字符Python - 如何将字符串结果放入if变量中?
for char in rand_word:
if char in guess:
print(char,end='')
else:
print('_',end="")
的代码的用户输入上面,如果我输入的字母“E”作为我的输入 它将输出这个
_e___e
我的问题是如何把这个输出放在一个变量中?
假设rand_word
是字符串= 'petite'
和guess
是单个字符Python - 如何将字符串结果放入if变量中?
for char in rand_word:
if char in guess:
print(char,end='')
else:
print('_',end="")
的代码的用户输入上面,如果我输入的字母“E”作为我的输入 它将输出这个
_e___e
我的问题是如何把这个输出放在一个变量中?
把你的角色在列表中,并加入它str.join()
:
result = []
for char in rand_word:
if char in guess:
result.append(char)
else:
result.append('_')
result = ''.join(result)
使用条件表达式和列表理解,你可以把所有这一切在同一行:
result = ''.join([c if c in guess else '_' for c in rand_word])
另一种方式要做到这一点:
result = [char if char in guess else "_" for char in rand_word]
str_result = "".join(result)
更简单,也许
to_print = ""
for char in rand_word:
if char in guess:
to_print += char
else:
to_print += '_'
print(to_print)
百万美元的问题是,为什么这可能不是一个好主意......
嗨, 我正在使用python一个刽子手游戏,我用了你提供的代码和它的工作。 但我的问题是,只要我输入一个字母,它会输出让我们说在'娇小',如果我输入字母'e'的输出是>> _e___e 但是,当我输入另一个字母可以说字母't'它会输出>> __t_t_ 我要的是第一输出也包括像这样,每当我得到一个正确的字母>> _e_t_te 这里是我的代码: http://pastebin.com/HrV27pxT – rccnls27
@ rccnls27:这是最好,如果你把它放在一个* new *问题中;一旦你目前的问题得到解决,评论不是一个很好的地方去问你遇到的新问题。你还需要记住以前的猜测。做一个列表或设置'guesses'并添加每个'guess'字母,然后使用'if char in guesses'。 –