2 回答
- 最新
- 投票最多
- 评论最多
1
There is no intrinsic function to get min/max of two numbers. Besides using a Lambda function, you can use a choice state to check which one of the two numbers is larger, and then another choice state to check if it is equal to the constant value.
0
As you noticed, there are no min/max functions available in Step Functions, however you can try something like this to compare two variables between each other and constant.
It's based on simple logic that can be coded as
a = 4
b = 5
const = 1
if a < b and a < const:
print("a is smaller")
elif b < a and b < const:
print("b is smaller")
Ecample (working) Step Function code:
{
"Comment": "Check minimum state machine",
"StartAt": "Choice",
"States": {
"Choice": {
"Type": "Choice",
"Choices": [
{
"And": [
{
"Variable": "$.a",
"NumericLessThanPath": "$.b"
},
{
"Variable": "$.a",
"NumericLessThanPath": "$.const"
}
],
"Next": "A is smaller"
},
{
"And": [
{
"Variable": "$.b",
"NumericLessThanPath": "$.a"
},
{
"Variable": "$.b",
"NumericLessThanPath": "$.const"
}
],
"Next": "B is smaller"
}
],
"Default": "Const not reached"
},
"A is smaller": {
"Type": "Pass",
"End": true
},
"Const not reached": {
"Type": "Pass",
"End": true
},
"B is smaller": {
"Type": "Pass",
"End": true
}
}
}
已回答 6 个月前
相关内容
- AWS 官方已更新 1 年前