-3

有人可以向我解释一下这个循环的最后一行是做什么的吗?这是一个单词混乱程序的片段,是我正在学习的一本书的一个例子。谢谢你。

import random
WORDS = ("python", "jumble", "easy", "difficult", "answer", "xylophone")
word = random.choice(WORDS)
correct = word
jumble = " "

while word:
  position = random.randrange(len(word))
  jumble += word[position]

  word = word[:position] + word[(position +1):]  
4

1 回答 1

2

它删除了 index 处的字符position

>>> word = "python"
>>> position = 3
>>> 
>>> word[:position] + word[(position +1):]
'python'

我们这里的字符串是"python"

Python
0 1 2 3 4 5
         ^

position = 3因此,结果是"python"'h'缺失是有道理的。

将来总是尝试用一个简化的例子来测试这些东西,通常它们会让你深入了解到底发生了什么。

另请参阅:Python 的切片表示法

于 2013-10-27T19:30:44.087 回答