Python 随机数不变,重复两次

Python 随机数不变,重复两次,python,loops,random,Python,Loops,Random,我的随机数不会改变,除非我重新启动循环,StudentNames模块重复两次,我不知道为什么。试试这个。。。一个函数只能返回一个值,但可以返回一个“tuple”(一个对象序列),并以相同的方式获取它: import random def main(): counter = StudentNames() StudentName = StudentNames() AverageRight = 0.0 Right = 0.0 numberone = Num

我的随机数不会改变,除非我重新启动循环,
StudentNames
模块重复两次,我不知道为什么。

试试这个。。。一个函数只能返回一个值,但可以返回一个“tuple”(一个对象序列),并以相同的方式获取它:

import random

def main():
    counter = StudentNames()
    StudentName = StudentNames()

    AverageRight = 0.0
    Right = 0.0

    numberone = Numbers(counter)
    numbertwo = NumbersTwo(counter)

    numberone = Equation(numberone, numbertwo)
    numbertwo = Equation(numberone, numbertwo)

    anwser = 0.0

def StudentNames():
    print("Student Name")

    StudentName = input("")
    print("Pick a Numeral Between One And Ten")

    counter = int(input(""))
    return counter
    return StudentName

def Equation(numberone, numbertwo):
    print("Enter Total [A Number Between One And Ten]")
    Total = int(input(""))

    while Total > 10:
         Total = Total + 1
         print("What Is The Answer To This Equation")
         print(numberone, "+", numbertwo)

         answer = int(input(""))
         answerOne = numberone + numbertwo

        if answer == answerOne:
            print("Correct")
            Correct = range(1, 10)
            Correct = Correct + 1
            print(Correct)
        else:
            print("Incorrect")
            incorrect = range(1, 10)
            print(incorrect)

def Numbers(counter):
    while counter > 10:
        counter = counter + 1
        numberone = random.randrange(1*2, 500*2)
        return numberone
对于随机数,您不需要计数器

def main():
    counter, StudentName = StudentNames()

def StudentNames():
    ... ... ...
    return counter, StudentName
像这样调用-每次调用都会生成一个新的随机数

def Numbers():
    n = random.randrange(1*2, 500*2)
    return n

StudentNames函数执行两次,因为您调用了两次。此外,返回后不能返回。Return立即停止函数执行并返回给被调用方。
numberone = Numbers()
numbertwo = Numbers()