If语句在python中是如何工作的

If语句在python中是如何工作的,python,Python,我试图理解python中的一些代码。(我不懂python,只懂c/c++) def合并(左、右): 结果=[] 左_idx,右_idx=0,0 当左_idx

我试图理解python中的一些代码。(我不懂python,只懂c/c++)

def合并(左、右):
结果=[]
左_idx,右_idx=0,0
当左_idx如果left[left_idx]这样想,那么在if之后给出的任何条件都将被计算,然后强制为布尔值(而不是0和1)。If True->执行If的主体

bool([]) # false 
bool([2, 34]) # true
Python中的每个值(以及几乎所有其他语言)在布尔上下文中都有一个“truthy”或“false”值。查找哪个是哪个:它在文档中。空列表是假的,非空列表是真的。已经有很长时间了,因为你被限制在0和1,甚至在C(C99增加了STDBOOL。h),更不用说C++,它有一个正确的布尔类型。
bool([]) # false 
bool([2, 34]) # true