Skip to main content
 首页 » 编程设计

python之如何多次运行一个函数并返回不同的结果python

2025年05月04日12pengyingh

我遇到了问题,我不知道这是否可行,但我想做的是多次调用一个函数。这个想法是我正在为门票生成一个序列号,我有一个函数可以生成一个长度为 16 的数字:

import random 
import string 
 
def random_number_generator(size=16, numbers=string.digits): 
    return ''.join(random.choice(numbers) for _ in range(size)) 

现在如果我像这样运行这个函数 print(random_number_generator() * 4) 它将返回如下内容:

1234567890987654 
1234567890987654 
1234567890987654 
1234567890987654 

如何让它返回不同的数字而不是相同的数字?

请您参考如下方法:

在 print() 中使用 * 4 的方式只是让它打印 4 次函数的相同结果。您可以使用 python 中的一些简单的东西作为循环来运行它 x 次:

for k in range(4): 
   print(random_number_generator()) 

因为数字范围太大所以不太可能有重复的结果,但是你可以用它来删除重复的结果

output = [] 
expected_results = [] 
for k in range(4): 
   output.append(random_number_generator()) 
 
expected_results = list(dict.fromkeys(output)) 
 
print(expected_results)