一个文件中编写了大约100多个命令。每行都是一条命令。如何阅读这些命令行并随机执行?而且,更重要的是,当出现某些问题(也许使用相同的random.seed
)时,如何重现该过程?
最佳答案
相同的rand.seed将具有相同的随机序列,所以是的。
首先,只需将命令读入数组即可。然后使用0到len(命令数组)之间的随机数-1执行该命令并将其从数组中删除。
cmds = file_handle.readlines()
random.seed(seed_number)
while (cmds):
item = 0
if (len(cmds) > 0):
item = random.randrange(len(cmds) - 1)
exec(cmds[item]) # This is terribly dangerous stuff, and ugly
cmds.remove(cmds[item])