Python:简化嵌套FOR循环?

2024-02-08

我想知道是否有一种方法可以简化下面的嵌套循环。困难在于每个循环的迭代器取决于前一个循环的内容。这是代码:

# Find the number of combinations summing to 200 using the given list of coin

coin=[200,100,50,20,10,5,2,1]

total=[200,0,0,0,0,0,0,0]
# total[j] is the remaining sum after using the first (j-1) types of coin
# as specified by i below

count=0
# count the number of combinations

for i in range(int(total[0]/coin[0])+1):
    total[1]=total[0]-i*coin[0]
    for i in range(int(total[1]/coin[1])+1):
      total[2]=total[1]-i*coin[1]
      for i in range(int(total[2]/coin[2])+1):
          total[3]=total[2]-i*coin[2]
          for i in range(int(total[3]/coin[3])+1):
              total[4]=total[3]-i*coin[3]
              for i in range(int(total[4]/coin[4])+1):
                  total[5]=total[4]-i*coin[4]
                  for i in range(int(total[5]/coin[5])+1):
                      total[6]=total[5]-i*coin[5]
                      for i in range(int(total[6]/coin[6])+1):
                          total[7]=total[6]-i*coin[6]
                          count+=1

print count

我建议看看http://labix.org/python-constraint http://labix.org/python-constraint这是一个Python约束库。它的示例文件之一实际上是达到特定数量的货币排列,一旦您指定了规则,它就会为您处理它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python:简化嵌套FOR循环? 的相关文章

随机推荐

  • Eclipse 无法启动 (Ubuntu):JVM 终止。退出代码=2

    我安装 ubuntu 14 04 LTS 64位 之后安装 Eclipse Luno Standard for 64bit 安装 Jdk 并使用以下链接按照设置 jdk 的所有步骤进行操作 http www wikihow com Inst
  • 使用 MOXy 和 XPath,是否可以解组两个属性列表?

    请注意 这不是我问的另一个问题的重复 使用 MOXy 和 XPath 是否可以解组属性列表 https stackoverflow com questions 6907225 with moxy and xpath is it possib
  • tf.keras.losses 中“BinaryCrossentropy”和“binary_crossentropy”的区别?

    我正在使用 tf GradientTape 使用 TensorFlow 2 0 训练模型 但我发现该模型的准确性为95 如果我使用tf keras losses BinaryCrossentropy 但降级为75 如果我使用tf keras
  • cURL 错误 60:SSL 证书:无法获取本地颁发者证书

    我尝试使用 Stripe 发送 API 请求 但收到错误消息 cURL 错误 60 SSL 证书问题 无法获取本地颁发者证书 这是我正在运行的代码 public function chargeStripe stripe new Stripe
  • 使用 ExecuteNonQueryAsync 并报告进度

    我以为我正在尝试做一些非常简单的事情 我只想在屏幕上报告一个运行数字 以便用户知道我正在执行的 SQL 存储过程正在工作 并且他们不会不耐烦并开始单击按钮 问题是我无法弄清楚如何实际调用 ExecutNonQueryAsync 命令的进度报
  • Python函数正在改变我输入的值,我不明白为什么

    这是我的第一个问题 所以如果我是一个完全愚蠢的人发布这个 请告诉我为什么以及我将来如何避免它 我有一些 python 代码 应该只需要一个列表 并将第 j 个分量乘以 1 这是有问题的代码 def flip spins j z spins
  • 设计一个可变类,在使用后它变得不可变

    假设该场景不允许实现不可变类型 根据这个假设 我想要关于如何正确设计一种类型的意见 示例 该类型在使用后变得不可变 public class ObjectAConfig private int valueB private string v
  • 在 G.Maps v2 中使用动画 Gif 作为地面叠加层

    我目前正在使用 Google 地图 并且想在我的应用程序中使用动画 Gif 作为叠加层 这真的很令人沮丧 因为它在 iOS 版本的应用程序上看起来很容易 所以我真的很想实现一些很酷的东西 我希望看到的结果是该视频的 23 秒 https w
  • 是否可以将 Clojure 的 case 形式与 Java 枚举一起使用?

    The case医生说 与 cond 和 condp 不同 case 执行常量时间调度 所有常量方式 表达式是可以接受的情况下 我想从中受益case的常量时间调度以匹配 Java 枚举 爪哇的switch语句适用于枚举 但在 Clojure
  • 根据 pandas 中现有列的函数创建新列的动态方法

    我正在寻找一种更具编程性的方法来创建多个新列作为 Pandas DataFrame 中现有列的函数 我有 14 列 Level 2 Level 15 我想迭代地创建 14 个新列 对第 2 15 列 第 3 15 列 第 4 15 列进行求
  • Android 数据绑定不适用于 View 'android:tag' 属性

    尝试在我的项目中使用新的 Android 数据绑定 但在尝试将 android tag 属性设置为某个自定义变量时遇到错误 我的 menu item xml 文件
  • Julia 相当于 numpy 的 where 函数吗?

    在Python中 where在 numpy 中 根据给定条件选择数组中的元素 gt gt gt a np arange 10 gt gt gt a array 0 1 2 3 4 5 6 7 8 9 gt gt gt np where a
  • 将 sar 命令结果输出到 csv 文件

    我对 shell 编程比较陌生 想知道是否有一种简单的方法来输出结果sar命令给一个csv文件 使用sar gt file1 csv可以完成工作 但格式不正确 所有数据都显示在一列中 我尝试过这个 但情况更糟 sar d u w 1 1 g
  • bash 自动补全转义 $

    在外壳中 GNU bash version 4 2 47 1 release x86 64 suse linux gnu 当我点击自动完成选项卡时 在变量名称完成后被转义 但如果没有完成 那么它只会响铃 例如 ls JDK H
  • 有条件地复制数据框中的行

    这是我的数据集的示例 day city count 1 1 A 50 2 2 A 100 3 2 B 110 4 2 C 90 这是重现它的代码 df lt data frame day c 1 2 2 2 city c A A B C c
  • 将阿拉伯语数据保存在 MySQL 数据库中

    我已经更改了表和列的字符集 我得到的阿拉伯文本为 MYSQL数据库中的标记 这是桌子的设计 CREATE DATABASE mydb DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8 gener
  • MIFARE Classic 标准按键

    我有两个 NFC 标签 其扇区具有不同的密钥 标签 1 此标签包含 NDEF 消息 扇区 0 A0 A1 A2 A3 A4 A5对于钥匙 A 扇区 1 至 15 D3 F7 D3 F7 D3 F7对于钥匙 A 标签 2 此标签上没有 NDE
  • 具有重复名称的 JS 关联对象

    好的 所以我有一个像这样的对象 var myobject field 1 lorem ipsum field 2 1 field 2 2 field 2 6 正如您所看到的 对象中有重复的名称 但具有不同的值 如果我像 使用 jQuery
  • Facebook 不接受自定义开放图谱属性

    我正在尝试使用 Facebook iOS SDK 3 5 来发布 Open Graph 操作 我的行动是 take a photo and photo有一个额外的要求string属性名为filter 我正在创建我的图形对象 所有值都是有效且
  • Python:简化嵌套FOR循环?

    我想知道是否有一种方法可以简化下面的嵌套循环 困难在于每个循环的迭代器取决于前一个循环的内容 这是代码 Find the number of combinations summing to 200 using the given list