Нужно преобразовать случайный вывод в строку

Я пытаюсь сделать игру про палача, и у меня возникли проблемы.

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 в строку с фиксированной длиной, чтобы я мог манипулировать ею дальше. Предполагается, что это пустые места, которые буквы заменяют в игре.

Извините, если это очень легко, я пытаюсь научиться самостоятельно.

var_underявляется строка строка в вашем коде. Вы также можете рассмотреть name = random.choice(list_words).
Mark 10.02.2019 15:41

Не очень понятно, в чем у вас проблемы?

Devesh Kumar Singh 10.02.2019 15:42

Извините, я не думаю, что мне удалось передать, в чем моя проблема. Мой код дает мне _ для каждой буквы в случайном слове. Но мне нужно преобразовать его в строку или что-то, что я могу затем заменить _ правильно угаданными буквами, если это имеет смысл?

julian østenrød 10.02.2019 15:45
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
3
67
2

Ответы 2

Одним из возможных способов может быть использование 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 _ _ _ _

Огромное спасибо. Это помогло. Думаю, мне нужно прочитать о команде соединения.

julian østenrød 10.02.2019 15:53

Попробуйте добавить метод 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))

Другие вопросы по теме