循环中的这行代码是如何工作的?

2024-03-28 21:43:59 发布

您现在位置:Python中文网/ 问答频道 /正文

有人能给我解释一下这个循环的最后一行是干什么的吗?这是一个单词混乱程序的片段,是我正在学习的一本书中的一个例子。非常感谢。你知道吗

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):]  

Tags: answerimport程序easypositionrandom单词例子
1条回答
网友
1楼 · 发布于 2024-03-28 21:43:59

它在索引position处剪切字符:

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

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

p  y  t  h  o  n
0  1  2  3  4  5
         ^

因此,对于position = 3,结果是"python",缺少'h'是有意义的。你知道吗

在将来,总是尝试用一个简单的例子来测试这些东西,通常它们会让你洞察到底发生了什么。你知道吗

另见:Python's slice notation

相关问题 更多 >