【问题标题】:Python array loopPython数组循环
【发布时间】:2018-07-27 22:20:54
【问题描述】:

我正在尝试解决以下问题。第一部分我能够做到,但它是问题的第二部分,我需要创建一个循环,检查直到数组中的值大于 100,它将继续乘以 2 并打印结果。

使用掩码将以下列表中低于 100 的所有值乘以

a = np.array([30, 10, 84, 101, 76])

重复此操作,直到所有值都高于 100。(不是手动,而是通过循环):

我认为最好是使用 While 循环,但我无法使用它。

【问题讨论】:

  • 除非您解释您究竟是如何“无法”使用它,否则我们恐怕无法为您提供帮助。

标签: python-3.x numpy


【解决方案1】:

不需要循环或掩码,因为可以明确计算所需的乘法次数;特别是,

a * 2**np.floor(np.log2(100/a) + 1)

做你想做的。

【讨论】:

  • 很有趣的做法,但恐怕他要的是数组的值,而不是操作的次数。他的问题非常简单,所以在他自己尝试之前我不会发布答案。这看起来像是一道作业题。
【解决方案2】:

看,这就是我所拥有的,对许多人来说可能超级简单,但对于像我这样的新手来说,却不是。我有问题与'while'

a = [230, 10, 284, 39, 76]

x =1 y=1 而真: 如果 x!=0: 打印(一) 对于我在范围内(len(a)): 如果 a[i] 休息 y=1 别的: 打破

【讨论】:

  • ps。我也不知道如何在这里发布代码。但是,这是我想弄清楚的事情。这不是一个家庭作业问题。
猜你喜欢
  • 2012-01-21
  • 2015-09-03
  • 1970-01-01
  • 2014-01-20
  • 1970-01-01
  • 2014-10-18
  • 1970-01-01
  • 1970-01-01
  • 2018-01-21
相关资源
最近更新 更多