如何打印两次相同的随机数?

How print two times same random number?

我尝试制作一个代码,在文本中打印两个相等的随机值。

import random
archivo=open('Ejercicio3.txt', 'w')
up=0
insert=int(input('Valor: '))
for i in range(insert):
    up+=1
    n1=random.randint(10, 100)
    n2=random.randint(10, 100)
    archivo.write(f'{up}.-    {n1} - {n2} = {n1-n2}\n\n')

    print(f'{up}.-    {n1} - {n2} = {n1-n2}')
    archivo.write(f'{n1-n2}\n')#This is the problem, because the code write numbers different random

archivo.close()

我想要的是让它做类似这样的事情:

import random
archivo=open('Ejercicio1.1.txt', 'w')
up=0
insert=int(input('Valor: '))
for i in range(insert):
    up+=1
    n1=random.randint(10, 100)
    n2=random.randint(10, 100)

    archivo.write(f'{n1} - {n2} =''\n\n')

up=0
archivo.write('---------------------------------------------\n')
for i in range(insert):
    up+=1
    n1=random.randint(10, 100)
    n2=random.randint(10, 100)
    archivo.write(f'{n1-n2}''\n\n')#Except this part, I want it to be exactly the same as the result of the subtraction above. 
archivo.close()

我想要的结果是这样的: Example

有人可以帮我吗?非常感谢。此致

只需将结果存储在一个列表中,然后再次对其进行迭代。

import random
archivo=open('Ejercicio1.1.txt', 'w')
up=0
results = []
insert=int(input('Valor: '))
for i in range(insert):
    up+=1
    n1=random.randint(10, 100)
    n2=random.randint(10, 100)
    results.append(n1-n2)
    archivo.write(f'{n1} - {n2} = {n1 - n2} ''\n\n')

up=0
archivo.write('---------------------------------------------\n')
for i in range(insert):
    up+=1
    archivo.write(f'{results[i]}''\n\n')
archivo.close()

您可以使用random.seed()并设置相同的种子两次。

import random

random.seed(0)
print(random.random())
#prints a random number    

random.seed(0)
print(random.random())
#prints the same random number