Python Bool and int comparison and indexing on list with boolean values

后端 未结 4 930
离开以前
离开以前 2020-12-03 17:15

Indexing on list with boolean values works fine. Though the index should be an integer.

Following is what I tried in console:

>>> l = [1,2,3         


        
4条回答
  •  星月不相逢
    2020-12-03 18:01

    The Python source documentation does not mention directly that all non-zero integers are evaluate to True when passed to an if statement, while only zero evaluates to False. You can prove it to yourself with the following code in Python:

    for test_integer in range(-2, 3, ):
        if not test_integer:
            print('{} evaluates to False in Python.'.format(test_integer))
        else:
            print('{} evaluates to True in Python.'.format(test_integer))
    >>>-2 evaluates to True in Python.
    -1 evaluates to True in Python.
    0 evaluates to False in Python.
    1 evaluates to True in Python.
    2 evaluates to True in Python.
    

    Try it for as far on either side of zero as you want; this code only shows for -2, -1, 0, 1, and 2 inclusive.

提交回复
热议问题