Python-将浮点范围(不带步长)作为函数的参数传递

Python-将浮点范围(不带步长)作为函数的参数传递,python,function,arguments,range,keyword-argument,Python,Function,Arguments,Range,Keyword Argument,我创建了一个函数,我希望能够使用一组我调用的关键字参数调用它。**criterias: def actionBasedOnParameters(**criterias): # my code 在这组参数中,其中一个将被称为‘SumInc’,我想给它传递一个范围。范围的形式为[1:15]或[1:]或[:15]。这基本上可以让我检查代码中的变量是大于某个边界还是小于另一个边界,或者两者兼而有之。 同样,正如这些代码行所做的那样: In [188]: 1 <= 15.98877 <

我创建了一个函数,我希望能够使用一组我调用的关键字参数调用它。
**criterias

def actionBasedOnParameters(**criterias):
    # my code
在这组参数中,其中一个将被称为‘SumInc’,我想给它传递一个范围。范围的形式为[1:15]或[1:]或[:15]。这基本上可以让我检查代码中的变量是大于某个边界还是小于另一个边界,或者两者兼而有之。 同样,正如这些代码行所做的那样:

In [188]: 1 <= 15.98877 <= 15
Out[188]: False

In [188]: 1 <= 15.98877 
Out[188]: True

In [188]: 15.98877 <= 15
Out[188]: False
有这种东西存在吗

谢谢你的提示,像这样的东西

criterias = dict(SumInc=(1,15))

def actionBasedOnParameters(**criterias):
    if 'SumInc' in criterias:
        lower, upper = criterias['SumInc']
        if lower <= my_variable <= upper:
            #action1
        else:
            #action2

infinity = float('inf')
actionBasedOnParameters(SumInc=(1, 15))
actionBasedOnParameters(SumInc=(-infinity, 15))
actionBasedOnParameters(SumInc=(1, infinity))
criterias=dict(SumInc=(1,15))
def ActionBasedOn参数(**标准):
如果标准中的“SumInc”:
下,上=标准['SumInc']
如果低于这样的值

criterias = dict(SumInc=(1,15))

def actionBasedOnParameters(**criterias):
    if 'SumInc' in criterias:
        lower, upper = criterias['SumInc']
        if lower <= my_variable <= upper:
            #action1
        else:
            #action2

infinity = float('inf')
actionBasedOnParameters(SumInc=(1, 15))
actionBasedOnParameters(SumInc=(-infinity, 15))
actionBasedOnParameters(SumInc=(1, infinity))
criterias=dict(SumInc=(1,15))
def ActionBasedOn参数(**标准):
如果标准中的“SumInc”:
下,上=标准['SumInc']

如果你能传递一个对象,那么我该如何检查我的变量是否在该片中?特别是如果只有一个边界。假设我将其设置为criterias=dict(SumInc=slice(None,15)),您可以访问
start
stop
属性,并根据提供的边界决定要进行哪些比较。好的,但是如何处理无边界?根据akarilimano的回答,我得到了一个“unorderable types:NoneType()”
start=criterias[“SumInc”]。start或float(“-inf”)
可以传递一个对象。然后如何检查我的变量是否在该片中?特别是在只有一个边界的情况下。假设我将其设置为criterias=dict(SumInc=slice(None,15))您可以访问
start
stop
属性,并根据提供的边界决定要进行哪些比较。好的,但如何处理无边界?根据akarilimano的回答,我得到一个“无序类型:非类型():
start=criterias[“SumInc”]。开始或浮动(“-inf”)