Python 创建长度为拆分字符串的符号数组
所以,我正在为一个初学者编码类制作一个Hangman游戏,现在我有了一个函数,可以从所选类别中返回一个随机单词。接下来,我想创建一个“*”数组,每个*代表单词中的一个字母 我想让你帮我修复的功能是Array_Juego(palabra_a_jugar)Python 创建长度为拆分字符串的符号数组,python,Python,所以,我正在为一个初学者编码类制作一个Hangman游戏,现在我有了一个函数,可以从所选类别中返回一个随机单词。接下来,我想创建一个“*”数组,每个*代表单词中的一个字母 我想让你帮我修复的功能是Array_Juego(palabra_a_jugar) 问题出在这一行: for palabra_a_jugar in range(0,len(palabra_a_jugar.split())): Array_Palabra.append("_") palabra_a_jugar以字
问题出在这一行:
for palabra_a_jugar in range(0,len(palabra_a_jugar.split())):
Array_Palabra.append("_")
palabra_a_jugar
以字符串开头split()
返回子字符串列表,以分隔符分隔,默认为空白。所以
'palabara a jugar'.split()
将返回['palabra','a','jugar']
然而,你大概只有一个词。假设palaba_a_jugar的值为“preparciosas”。那么就没有空格了,所以
'palabara a jugar'.split()
会回来的
['pretenciosas']
单元素列表。这就解释了你所看到的行为
但是,您不需要像这样到处奔波,也不值得为它编写函数。与帕拉布拉宫(palabra_A_jugar)长度相同的星星列表
len(palabra_a_jugar) * ['*']
For example, 4*['*']== ['*','*','*','*']
“*”*len(palabra)
将返回一个包含所有“*”字符的字符串,其长度与palabra
相同<代码>列表(“*”*len(palabra))将其转换为字符列表-这在技术上是您要求的。或者['*']*len(palabra)
或['*'表示范围内的(len(palabra))]
表示列表而不是字符串。再次查看,我看到了空格。您是否想要:['*'for uu in palabra]
已经尝试过这种方法,但没有成功;我认为这是把这个词当作一个单独的字符。看看它是如何实现的“def Array\u Juego(palabra\u a\u jugar):Array\u palabra=list('*'*len(palabra\u a\u jugar))return Array\u palabra`……你真的做了。\uu getitem\uuuuuuuuuuuuu1)
而不是[1]
?哦,我的上帝,谢谢你!我被卡住了!
len(palabra_a_jugar) * ['*']
For example, 4*['*']== ['*','*','*','*']