当我尝试使它成为一个功能时不起作用

所以我在我的编程课程中制作了这个简单的程序,它在区间 -5 和 5 之间显示 100 个随机数,没有连续重复。我首先在没有函数的情况下制作了它,但是当我尝试定义它时,代码停止工作。出于某种原因,“x”不在范围内,我无法弄清楚出了什么问题。


任何帮助表示赞赏!


import random



def rand():

    lst = []

    y = 10


    for i in range(0, 100):

        x = random.randint(-5, 6)

        while x == y:

            x = random.randint(-5, 6)

        lst.append(x)

        x = y

    return rand



print(rand())


Smart猫小萌
浏览 179回答 1
1回答

白衣染霜花

这里的问题是:您正在返回一个函数本身。这在 Python 中是可能的(你实际上会惊讶于那里有多少可能的东西)。我猜你想要做的是返回一个在你的for循环中创建的列表,所以正如@Carcigenicate 所指出的,这可能是一个错字。import randomdef rand():    lst = []    y = 10    for i in range(0, 100):        x = random.randint(-5, 6)        while x == y:            x = random.randint(-5, 6)        lst.append(x)        x = y    return lstprint(rand())
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python