|
发表于 2019-7-23 16:59:57
|
显示全部楼层
本帖最后由 ietar 于 2019-7-24 09:47 编辑
代码槽点有点多..你这个lista listb都是全局变量 第一次循环以后listb就有6个东西了 之后再shuiji() len(listb)==6 直接break了 当然每次结果都一样
如果目的是生成随机顺序的abcdef 那重写一下大概是这样
- import random
- def get_rd_list():
- a = ['a', 'b', 'c', 'd', 'e', 'f']
- b = []
- while a:
- b.append(a.pop(random.randint(0, len(a)-1)))
- print(b)
- if __name__ == '__main__':
- for _ in range(100):
- get_rd_list()
复制代码
好像还要求均值 那
- import random
- def get_rd_list():
- a = ['a', 'b', 'c', 'd', 'e', 'f']
- b = []
- global count
- while len(b) != len(a):
- getone = random.choice(a)
- if getone not in b:
- b.append(getone)
- count += 1
- print(b)
- if __name__ == '__main__':
- times = 100
- count = 0
- for _ in range(times):
- get_rd_list()
- print(count/times)
-
复制代码 |
|