我已经编写了基本的代码破解游戏(如Hangman),如下所述,但是当我在Python 3.3.1中运行代码时,代码似乎没有出现_ _ _ _ _,就像在一个刽子手游戏中那样;
_
_
_
_
_
我理想情况下它会出现在一条直线上,我在早期版本的Python中没有这个问题 - 我已经搜索过并且它正在慢慢地让我发疯 - 有人可以帮忙吗?然后我可以看看添加一个数组来存储一系列代码!
代码:
code = "25485"
guesses = ''
turns = 5
counter = 0
print ("Welcome to code cracker")
while turns > 0:
for char in code:
if char in guesses:
print (char),
else:
print ("_"),
counter += 1
if counter == 0:
print ("\nYou cracked the code")
break
print
guess = input("guess a number:")
guesses += guess
if guess not in code:
turns -= 1
print ("Wrong\n")
print ("You have", + turns, 'more guesses')
if turns == 0:
print ("You failed to crack the code\n" )
答案 0 :(得分:4)
在python3中,使用print中的sep
和end
参数:
In [4]: for i in range(4):
...: print ("_", sep='', end='')
#output: ____
答案 1 :(得分:2)
你可以简单地避免print
将你的字符join
变成一个字符串:
def symbolFor(char):
if char in guesses:
return char
else:
return "_"
pretty = [symbolFor(char) for char in code]
s = "".join(pretty)