带有随机数字的Python类型错误

2024-09-27 21:35:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Django的视图中有以下代码:

class singlePull(TemplateView):
template_name = 'gacha/singlepull.html'

def randomStar(self):
    choice = [5,4,3]
    probability = [0.1, 0.2, 0.7]
    star = random.choices(choice, probability)
    return star


def post(self, request):
    result = self.randomStar()
    character = Characters.objects.filter(stars=result).order_by('?')[:1]
    return JsonResponse(result, safe=False)

使用这段代码,我首先从可用列表(5、4、3)中随机选择一个数字,所选的数字在mysql查询中用作变量作为值。 例如,如果选择了数字3,那么查询将查找数据库中星号设置为3的所有字符,并对它们进行随机排序,只显示一个字符。 当我运行此代码时,不断出现以下错误:

TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'

当我在Jsonresponse中发送结果时,我得到一个随机数,它不是一个列表。为什么当我在查询中输入它时,它会将它视为一个列表?怎样才能重做才能工作

谢谢


Tags: django代码self视图列表returndef数字

热门问题