Python列表无法正常工作

Jus*_*tin 2 python list

import random

words = ["Football" , "Happy" ,"Sad", "Love", "Human"]

for word in words:
    word = random.choice(words)
    print(word)
    words.remove(word)
Run Code Online (Sandbox Code Playgroud)

为什么上面的代码只打印出3个单词而不是全部5个单词?我是否试图以words不正确的方式以随机顺序打印单词?

Ósc*_*pez 6

在迭代它时,您无法修改列表(通过添加或删除元素),行为未定义.这是一个可能的替代方案,你正在做的没有这个问题:

random.shuffle(words)
for word in words:
    print(word)
Run Code Online (Sandbox Code Playgroud)