簡體   English   中英

如何在python中隨機function內的select函數

[英]How to randomly select functions within a function in python

我有兩個函數執行不同的操作,但我希望它們在另一個 function 中隨機調用。

例如。

def func1(): do something
def funct2(): do something else

def func3(): select funct1() or funct2() randomly

將函數收集在一個列表中,並隨機選擇其中一個(使用random.choice )並調用它!

>>> def f2():
        return 2

>>> def f1():
        return 1

>>> fns = [f1, f2]
>>> from random import choice
>>> choice(fns)()
1
>>> choice(fns)()
2

這是可能的,因為Python函數是一流的對象。 在Python的一流對象上閱讀此鏈接

另一種方法......而不是選擇 function 選擇數字並為其分配功能

import random
def f1():
    print('Good Morning')
    return 'Hi'
def f2():
    print('Good Night')
    return 'Hello'
if random.randint(1,2)==1:
    print(f1())
else:
    print(f2())

output:

Good Night
Hello

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM