Python数组循环

时间:2018-07-26 17:35:22

标签: python-3.x numpy

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

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

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

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

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

2 个答案:

答案 0 :(得分:0)

不需要循环或掩码,因为可以显式计算所需的乘法数;

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

做你想要的。

答案 1 :(得分:0)

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

    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    string s="";
    char ch;
    while(1)
    {
        cin>>ch;
        s+=ch;
    }
    cout<<s<<endl;
    return 0;
    }

x = 1 y = 1 而True: 如果x!= 0:        打印(a)        对于范围内的我(len(a)):            如果a [i] <100:                a [i] = a [i] * 2                y = 0            i + = 1            如果(i == len(a)和y == 1):                x = 0
               打破        y = 1     其他:            打破