使用Python中的while循环同时检索和检查值 使用C++语言编程时,我经常使用以下 > 循环模式。 while ((Data data = GetNewData()) != END) { // Do some processing ProcessData(data); }
我们如何在Python中做同样的事情?下面的方法似乎不起作用使用Python中的while循环同时检索和检查值 使用C++语言编程时,我经常使用以下 > 循环模式。 while ((Data data = GetNewData()) != END) { // Do some processing ProcessData(data); },python,loops,while-loop,Python,Loops,While Loop,我们如何在Python中做同样的事情?下面的方法似乎不起作用 while (data = GetNewData()) != END: # Do some processing ProcessData(data) 那么我可以想到的另一个选择是: while 1: data = GetNewData() if data == END: break # Do some processing using data ProcessData(data) 但是上面看起来并不
while (data = GetNewData()) != END:
# Do some processing
ProcessData(data)
那么我可以想到的另一个选择是:
while 1:
data = GetNewData()
if data == END:
break
# Do some processing using data
ProcessData(data)
但是上面看起来并不整洁。有人能推荐一个好方法吗?在Python中,赋值是一个函数,这就是为什么
while (data = GetNewData()) != END:
# Do some processing
ProcessData(data)
不起作用<代码>(data=GetNewData())不能用作值
相反,您可以使用:
循环将在每次迭代中调用GetNewData()
,并将值分配给data
,除非它等于END
。虽然这种语法绝对不像C++的直觉那样,但它确实消除了错误,代码< > =代码>代替了<代码>=< /代码>,反之亦然。
for data in iter(GetNewData, END):
# Do some processing
ProcessData(data)