随机数字练习

问题描述 投票:0回答:3

我是Python的初学者。您能帮我解决这个问题吗?

定义一个rolldies(n)函数,该函数模拟n个骰子的掷骰并返回投掷的有序列表。 (例如,rolldies(3)生成1到6之间的三个随机数,例如2、5、1,并返回列表[1、2、5]。)

我做了这个,但这不是练习所想要的:

import random

def rolldies():
    die1 = random.randrange(1, 6)
    die2 = random.randrange(1, 6)
    die3 = random.randrange(1, 6)
    list=[]
    list.extend((die1, die2, die3))
    list.sort(reverse = False ) 
    return list

print(rolldies())
python python-3.x python-3.7
3个回答
0
投票

您应该将列表的长度传递给函数名称rolldies()。尝试下面的代码

import random

def rolldies(n):
    list=[]
    for i in range(n):
        list.append(random.randrange(1, 6))
    list.sort(reverse = False ) 
    return list

print(rolldies(4))

0
投票
import random
def rolldies():
    die1=random.randrange(1, 6)
    die2=random.randrange(1, 6)
    die3=random.randrange(1, 6)
    list=[]
    list.extend((die1, die2, die3))
    list.sort(reverse=True)
    return list

print(rolldies())

0
投票

您可以使用for循环n次并生成一个随机数。在每一步中,您都将随机数放入列表中。

import random

def rolldies(n):
    roll_list = []
    for i in range(n):
        rand = random.randrange(1, 6)
        print(rand)
        roll_list.append(rand)
    roll_list.sort()
    return roll_list

print(rolldies(3))
© www.soinside.com 2019 - 2024. All rights reserved.