下面的概念适用于C语言和C++语言,您可以将函数的结果分配给变量,然后使用新赋值的变量作为while循环的条件。所以使用逗号运算符。
一个示例C++代码如下所示。我通过执行数组的赋值来模拟函数调用的行为。在我的实际情况下,函数只提供一次值,我希望将其用作条件,但也要在want body循环中使用。我没有其他的结束条件了。
#include <iostream>
int main(){
int vals[] = {1, 2, 3, 4};
int var = 0;
int i=0;
while(var = vals[i], var != 3){ // vals mocks the function
std::cout << var << std::endl; // mock usage of value stored in var
i++;
}
}怎样才能获得函数调用的结果,在循环中使用它作为条件,并在循环体中使用呢?在其他语言中,do-while循环可以解决这个问题,但是python没有。
发布于 2022-09-27 14:19:54
所谓的“海象运算符”(在3.8中引入)是理想的。
下面是一个例子:
def func():
return 1 # obviously not a constant
while (n := func()) != 0:
print(n) # infinite loop in this example but you get the pointhttps://stackoverflow.com/questions/73869120
复制相似问题