需要将随机输出转换为字符串

时间:2019-02-10 14:37:18

标签: python

我正在尝试制作子手游戏,但遇到了一些麻烦。

import random

list_words = ["cataaaaaaaaaa", "hat", "computer", "thursday", "idiot", "catnip", "sunday"]

name = (random.sample(list_words, 1)[0])
print(f"The word is {len(name)} characters long.")

var_under = ("_" * len(name))

我正在寻找一种将var_under转换为固定长度的字符串的方法,因此我可以对其进行进一步的操作。它应该是游戏中字母替换的空白空间。

很抱歉,如果这很简单,我正在尝试自己学习。

2 个答案:

答案 0 :(得分:3)

一种可能的方法是将var_under用作list并相应地更改值。如下所示:

# before assignment character
var_under = ["_"] * len(name)
print(' '.join(var_under)) # outputs: _ _ _ _ _ _

# after assignment
var_under[1] = 'a' # user entered value assigned to index
print(' '.join(var_under)) # outputs: _ a _ _ _ _

答案 1 :(得分:0)

尝试将str()方法添加到var_under

我修改了以下代码,修改后的var_under现在是str类型。

import random

list_words = ["cataaaaaaaaaa", "hat", "computer", "thursday", "idiot", "catnip", "sunday"]

name = (random.sample(list_words, 1)[0])
print(f"The word is {len(name)} characters long.")

var_under = str("_" * len(name))

print(var_under)
print(type(var_under))