экземпляр dbm является ложным

В python 2.6.5 экземпляр dbm не имеет методов __nonzero__ или __len__, так почему же он оценивает false как логическое значение?

>>> a = dbm.open( 'foo', 'c' )
>>> if a: print 'true'
...
>>>

person William Pursell    schedule 30.01.2012    source источник


Ответы (1)


Согласно документации по Python, один из типов значений, считается ложным

любое пустое отображение, например, {}.

Поскольку объект dbm является отображением, а новый экземпляр пуст, следовательно, он ложен.

person srgerg    schedule 30.01.2012