使用 Python 计算匹配规则的项目的程序

假设我们有一个数组 nums,其中每个 nums[i] 包含三个元素 [type_i, color_i, name_i]。这些描述了第 i 个项目的类型、颜色和名称。我们还有一个由另外两个字符串表示的规则,ruleKey 和 ruleValue。如果以下条件之一为真,现在我们可以说第 i 个项目与规则匹配 -

  • ruleKey = "type" 和 ruleValue = type_i。

  • ruleKey = "color" 和 ruleValue = color_i。

  • ruleKey = "name" 和 ruleValue = name_i。

我们必须找到我们可以找到的匹配数量。

所以,如果输入是这样的

Bike蓝色的ElecB
Sumo
自行车蓝色的电视

而 ruleKey = "color", ruleValue = "blue", 那么输出将是 2 因为有两个匹配 [["Bike","blue","ElecB"] 和 ["Bike","blue","TVS "]]。

为了解决这个问题,我们将按照以下步骤操作 -

  • 计数:= 0

  • 如果 ruleKey 与“type”相同,则

    • 如果 items[i, 0] 与 ruleValue 相同,则

    • 计数 := 计数 + 1

    • 对于 i 在 0 到项目大小的范围内,请执行

    • 如果 ruleKey 与 "color" 相同,则

      • 如果 items[i, 1] 与 ruleValue 相同,则

      • 计数 := 计数 + 1

      • 对于 i 在 0 到项目大小的范围内,请执行

      • 如果 ruleKey 与“name”相同,则

        • 如果 items[i, 2] 与 ruleValue 相同,则

        • 计数 := 计数 + 1

        • 对于 i 在 0 到项目大小的范围内,请执行

        • 返回计数

        让我们看看以下实现以获得更好的理解 -

        示例

        def solve(items, ruleKey, ruleValue):

           count = 0

           if ruleKey == "type":

              for i in range(len(items)):

                 if items[i][0] == ruleValue:

                    count += 1

           if ruleKey == "color":

              for i in range(len(items)):

                 if items[i][1] == ruleValue:

                    count += 1

           if ruleKey == "name":

              for i in range(len(items)):

                 if items[i][2] == ruleValue:

                    count += 1

           return count

        items = [["Bike","blue","ElecB"],["Car","silver","Sumo"],["Bike","blue","TVS"]]

        ruleKey = "color"

        ruleValue = "blue"

        print(solve(items, ruleKey, ruleValue))

        输入

        [["Bike","blue","ElecB"],["Car","silver","Sumo"],["Bike","blue","TVS"]],"color",

        "blue"

        输出结果
        2

        以上是 使用 Python 计算匹配规则的项目的程序 的全部内容, 来源链接: utcz.com/z/317372.html

        回到顶部