Not all nor any. Just the one.
Project description
Not all nor any: just the one.
one is a simple function to check if there is a unique value that evaluates to True in an iterable, and return it.
Examples:
>>> from one import one
>>> one((True, False, False))
True
>>> one((True, False, True))
False
>>> one((0, 0, 'a'))
'a'
>>> one((0, False, None))
False
>>> one((True, True))
False
>>> one(('', 1))
1
Install
pip install one
Use cases
A very frequent case is when you have values that must exclude each others.
class ShopStore(models.Model):
address = models.CharField(max_length=200, null=True, blank=True)
is_online = models.BooleanField(default=False)
def clean(self):
if not one((self.address, self.is_online)):
raise models.ValidationError(u'A shop must be online or physical, but not both')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
one-0.1.0.tar.gz
(4.5 kB
view hashes)