为什么我的刽子手计划不起作用?

时间:2018-01-19 17:52:26

标签: python python-3.x

我正在尝试制作一个刽子手程序,我需要给变量newWord提供与原始单词相同的长度,但只填充下划线。这是我的代码:

word = [r.choice(WORDS).lower()]
origWord = word
for item in origWord:
    newWord += "_"

但是,每当我运行它时,它都会返回:

-----------
|         |
|
|
|
| 
|
|
------------


_

Take a guess: 

将单个下划线作为“newWord”。有什么提示吗?

3 个答案:

答案 0 :(得分:0)

很难说没有完整的例子,但第一行

word = [r.choice(WORDS).lower()]

这是一个包含一个元素的列表。因此,下面的代码为此列表中的每个元素添加一个下划线。我希望删除[]足以让这项工作

word = r.choice(WORDS).lower()

但是,您不需要for循环来获取下划线的数量,您可以这样做

newWord = '_' * len(word)

答案 1 :(得分:0)

我会尝试制作一个空数组,然后使用for循环将下划线插入列表。完成此操作后,使用'_'.join()命令组合下划线。例如:

a = []
b = int(input('How many characters is your word? '))
for i in range(0,b):
    a.append('_')
c = ' '.join(a)
print(c)

输出:

How many characters is your word? 7
_ _ _ _ _ _ _
>>> 

希望这有帮助!

答案 2 :(得分:-1)

尝试一下像:

newWord = ''.join(['_'*len(word)])