python - Python - 从数组中选择随机名称而不重复,直到全部选择
问题描述
我刚开始学习 Python,所以如果这很简单,我很抱歉。我想从一组名称中生成一个随机名称,然后在选择所有名称并重新开始之前不再重复该名称。下面的代码是我已经拥有的,这会生成随机名称,但正在发生重复。
import random
employee = ["adam", "Scott", "Michael", "Andrew", "Mark", "Fernando", "Faith", "Steve", "Lee", "Amani", "Liv", "Nick A", "James", "Jake", "Brett", "Graham", "Fraser", "Jacob", "Chelsea", "Phil", "George", "Charley", "Emma", "Steph"]
print(random.choice(employee))
解决方案
两件事之一应该工作,非常相似:
(一)制作清单复印件;从副本中选择项目。每次选择一个项目时,将其从列表中删除。当您清空列表时,制作一个新副本并继续。
(2) 使用来自 itertools 的改组操作为您提供列表的随机排列。遍历那个。当你走到尽头时,得到一个新的随机排列。
推荐阅读
- html - 如何过滤 AngularJS 选择上的 ng-options?
- mariadb - 在全局级别设置 AUTOCOMMIT=0/1 在 MariaDB 10.3 中似乎没有任何影响
- php - 使用php将文本水印添加到jpg图像
- java - 生成 application/octet-stream 和 application/json
- java - 如果在Java中提供偶数,为什么应该无限的while循环终止
- javascript - 我用于解析食品订单的简单 Javascript RegExp 正在嘲笑我
- amazon-web-services - Auto Scaling 组生命周期挂钩定期通知
- php - get_posts 的包含选项有效,但不限制帖子数量
- ios - 如何从集合视图单元格中调用 CollectionViewController
- java - Jline 终端编写器输出格式错误的输出