如何将参数传递给随机数生成器中的函数而不生成新的随机数?

2024-10-01 07:23:22 发布

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

这是一个将输入与函数生成的随机数进行匹配的程序。你知道吗

有三个功能

  • “rangen()”用于生成随机数
  • 'index()'要显示网页,我们可以输入一个值,用rangen()生成的随机数进行检查
  • 用于检查值的“checker()”

我需要将“rangen()”生成的值传递给“checker()”。你知道吗

我无法在checker()函数中调用rangen(),因为随机数将在同一会话中更改。我需要的随机数是相同的,直到我们得到结果:'祝贺!!!匹配的号码'

你知道吗视图.py你知道吗

from django.shortcuts import render
from django.http import HttpResponse
import random

# Create your views here.


def rangen(request):
    rannumber= random.randint(1,3)
    print(rannumber)
    return rannumber


def index(request):

    return render(request,'generator/index.html')

def checker(request):

    print(rannumber)
    if request.method=='POST':
        innum = int(request.POST['inputnumber'])
        print(innum)
        if (rannumber==innum):
            flag = 'Congratulation!!! Number Matched'
            return render(request,'generator/index.html',{'flag':flag})
        elif(innum>rannumber):
            flag = 'Oops!!! You Entered a High Value, Try Again!!!'
            return render(request,'generator/index.html',{'flag':flag})
        else:
            flag = 'Oops!!! You Entered a Low Value, Try Again!!!'
            return render(request,'generator/index.html',{'flag':flag})

你知道吗索引.html你知道吗

<div class="formclass">
      <h1>Random Generator</h1>
      <form action="checker" method="post">
        {% csrf_token %}
        <h3>Enter you guess</h3>
        <input type="text" name="inputnumber" placeholder="Enter Your Guess" required><br><br>
        <button type="submit" name="button">Submit</button>
        <h1>{{flag}}</h1>
      </form>
    </div>

当我运行服务器时没有错误,但是当我提供我的猜测值时它会显示

'NAME ERROR: name 'rannumber' is not defined'


Tags: importindexreturnrequestdefhtmlcheckerrender