Python:查找随机生成的整数的乘积

时间:2013-04-16 13:50:53

标签: python function dice

还有一个问题。我是第一年的CS学生,他必须在纸上做这件事,所以我无法导入任何程序来解决问题。

我被要求创建一个伪随机的整数集,然后使用函数def product(n)乘以整数的乘积。我知道这段代码真的错了,但我真的不知道该怎么做!以下是我到目前为止的情况:

def product(n):
    product = j*i
for j in range (20):
    i=random.randrange(1,4,1)
    print ("The set of numbers is", i)

4 个答案:

答案 0 :(得分:1)

你没有指定整数的范围,但我认为这可以做你想要的:

import random

def product(n):
  lower_bound = 1
  upper_bound = 10
  result = 1
  for i in range(n):
    result *= random.randint(lower_bound, upper_bound)
  return result

答案 1 :(得分:1)

我会选择

import random
def product(n):
    return reduce(lambda x,y:x*y,(random.randint(1,3) for i in xrange(n)))

有几件事:

  1. 如果不导入或编写自己的伪随机生成器,就无法生成随机数
  2. 查找reduce。这可能是这里的首选方法。
  3. 如果您可以导入operator模块,请使用operator.mul代替lambda x,y:x*y

答案 2 :(得分:0)

如果n是生成的数字:

import random
def product(n):
    random_list = [random.randint(0,n) for r in xrange(n)]
    return reduce(lambda x,y : x*y,  random_list)

答案 3 :(得分:0)

你想要什么?乘以整数并展示他们的产品?见:

def product(numberOfIntegers) :
   finalResult = 1
   for i in range(1,numberOfIntegers) :
      randomNumber = random.randrange(1,4,1)
      finalResult = finalResult * randomNumber
   return finalResult