Вы можете использовать это:
$stmt->fetch(PDO::FETCH_COLUMN, $number_of_column);
Если вы делаете это часто, вы захотите создать обратный словарь:
>>> rev_ref = dict((v,k) for k,v in ref.iteritems())
>>> rev_ref
{'def': 'abc'}
>>> def revmapper(to):
... return rev_ref[to]
Если это редко, и вам все равно, если это неэффективно, сделайте это:
>>> def revmapper(to):
... for k,v in ref.iteritems():
... if v == to: return k
Вы можете создать обратный словарь:
revdict = dict((v,k) for k,v in ref.items())
, затем найдите то, что вы хотите:
assert revdict["def"] == "abc"
Обратите внимание, что это не будет работать, если два ключа отображаются на одно и то же значение.
dict(map( lambda a:[a[1],a[0]], d.iteritems() ))