yesdo 发表于 2018-5-29 11:14:20

关于《零基础课后作业-009》动手题003,三色球随机抽取,课后答案的疑问

本帖最后由 yesdo 于 2018-5-29 11:15 编辑

大家好,关于零基础课后作业-009》动手题003,三色球随机抽取,课后答案有些疑问
题目是 3个红球,3个黄球,6个绿球放进箱子,随机抽取8个,给出抽取的样本。
小甲鱼给出参考答案,是用3个for循环来实现,我认为这个思虑不妥,这个抽样并不是随机的,而是固定的值。
================老师的答案=======================
print('red\tyellow\tgreen')
for red in range(0, 4):
    for yellow in range(0, 4):
      for green in range(2, 7):
            if red + yellow + green == 8:
                # 注意,下边不是字符串拼接,因此不用“+”哦~
                print(red, '\t', yellow, '\t', green)

=================我交的作业======================
import random
ballbox = ['redball','redball','redball','yellowball','yellowball','yellowball','greenball','greenball','greenball','greenball','greenball','greenball']
chooseballlist = []
ballcount = 11
for i in range(0,8,1):
    randomnum = random.randint(0,ballcount)
    ballcount-=1
    chooseball = ballbox.pop(randomnum)
    chooseballlist.append(chooseball)
print(chooseballlist)

冬雪雪冬 发表于 2018-5-29 11:25:35

小甲鱼的程序是给出所有的可能,而用随机数的方式给出的是各种方式的概率,在数量不够时,有可能某种组合不会出现。

yesdo 发表于 2018-5-29 11:38:56

好吧 是我理解错题目意思,小甲鱼是要列出所有的排列可能哦。

16467729 发表于 2018-5-29 11:46:32

帮顶
页: [1]
查看完整版本: 关于《零基础课后作业-009》动手题003,三色球随机抽取,课后答案的疑问