我发布了关于堆栈溢出的问题,因为我不知道要搜索什么,当我做出答案时,答案似乎完全没有用。
无论如何,这是我的代码:
from random import randrange
# - System Variables -
gm = 1
pv = ""
words = ["city", "cube", "keyhole", 'puppy', 'program', 'clock', 'glass', 'material', 'bottle', 'wall', 'shoes', 'lights', 'sound', 'image', 'hearing', 'machine', 'mouse', 'puppet', 'wagon', 'reward', 'table', 'ceiling', 'plank', 'electric', 'country', 'music', 'branch', 'flute', 'wind', 'tile']
# - Game -
While gm == 0:
wn = randrange(31) - 1
word = words[wn]
while pv == word:
pv = word
wn = randrange(31) - 1
word = words[wn]
我正在尝试制作一个python hangman游戏,我制作了循环等等。
我的问题
予。我需要创建一个字符串(插入拾取的字符串的长度)下划线,并且将有一个循环使用字符串“letter”来告诉用户选择了哪个字母。我如何制作它,以便字符串显示下注未被猜到的位置,并且字母在猜到时会猜到?
II。我需要让玩家自动输入大写字母。我该怎么做?
III。如何检测用户输入的字母是否在单词?
中谢谢!
答案 0 :(得分:1)
我。我需要创建一个字符串(插入拾取的字符串的长度)下划线,并且将有一个循环使用字符串“letter”来告诉用户选择了哪个字母。我如何制作它,以便字符串显示下注未被猜到的地方,并且字母在猜到时会猜到?
考虑像
这样的理解类型方法>>> guesses = ['H','A']
>>> secret = 'HANGMAN'
>>> state = ''.join(x if x in guesses else '_' for x in secret)
>>> state
'HA___A_'
在那里也可以包含一些空格,以便明确其中有多少个字母。 (注意join
之前字符串中的空格):
>>> state = ' '.join(x if x in guesses else '_' for x in secret)
>>> state
'H A _ _ _ A _'
II。我需要让玩家自动输入大写字母。我该怎么做?
像upper()
这样的东西应该可行
>>> guess = 'a'
>>> guess.upper()
'A'
III。如何检测用户输入的字母是否在单词?
中
我上面使用的理解型方法就是这样做的。如果你想明确地做,你可以使用类似的东西:
if letter in secret:
# do something
答案 1 :(得分:0)