Почему я могу использовать логическое значение в качестве индекса списка?

#python #boolean

#python #логическое

Вопрос:

Кто-нибудь может помочь мне понять приведенный ниже код Python?

 In[41]: list_a = [1, 2, 3, 4]

In[42]: list_a[True]
Out[42]: 2

In[43]: list_a[False]
Out[43]: 1
 

Комментарии:

1. В Python bool является вложенным значением int ; True и False равны числам 1 и 0 соответственно, они просто имеют другое строковое представление.

Ответ №1:

True интерпретируется как 1, поэтому list_a[True] эквивалентно list_a[1] тому же для list_a[False] => list_a[0]

Комментарии:

1. Ах, да… Я должен был это знать. Спасибо!