A simpler solution is to use unpacking. This will already do everything you need, including checking that it contains exactly one element.
Single item:
>>> name, = (name for name in ('bob','fred') if name=='bob') >>> name 'bob'
Too many elements:
>>> name, = (name for name in ('bob','bob') if name=='bob') Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: too many values to unpack
No items:
>>> name, = (name for name in ('fred','joe') if name=='bob') Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: need more than 0 values to unpack
Brian source share