How can I create a tuple consisting of just an empty tuple, i.e. (())
? I have tried tuple(tuple())
, tuple(tuple(tuple()))
, tuple([])
and tuple(tuple([]))
which all gave me ()
.
The reason that I use such a thing is as follows: Assume you have n
bags with m
items. To represent a list of items in a bag, I use a tuple
of length n
where each element of that tuple is a representative for a bag. A bag might be empty, which is labeled by ()
. Now, at some initial point, I have just one bag with empty items!
Advertisement
Answer
The empty tuple is ()
(or the more-verbose and slower tuple()
), and a tuple with just one item (such as the integer 1
), called a singleton (see here and here) is (1,)
. Therefore, the tuple containing only the empty tuple is
((),)
Here are some results showing that works:
>>> a=((),) >>> type(a) <type 'tuple'> >>> len(a) 1 >>> a[0] () >>> type(a[0]) <type 'tuple'> >>> len(a[0]) 0