Something similar to Noufal's but with out using itertools... >>> s=(1,2,3,4) >>> a,b,c,d = s + (None,)*(4-len(s)) >>> print a,b,c,d 1 2 3 4 >>> s=(1,) >>> a,b,c,d = s + (None,)*(4-len(s)) >>> print a,b,c,d 1 None None None
Regards Veerabahu On Sat, Oct 6, 2012 at 4:17 PM, Noufal Ibrahim <nou...@nibrahim.net.in>wrote: > Saju M <sajup...@gmail.com> writes: > > > Hi, > > > > I am using python 2.6. > > > > I need a way to make following code working without any ValueError . > >>>> a, b, c, d = (1,2,3,4) > >>>> a, b, c, d = (1,2,3). > > This is crude but fun. I wouldn't do it in anything serious program though. > > > import itertools > > > > a, b, c, d = list(itertools.chain(input_tuple, itertools.repeat(None, > 4)))[:4] > > If your input tuple has 4 values, you'll get them in the 4 variables. > > If your input tuple has less (say 3), you'll get a, b and c. d will be > set to None. > > If your input tuple has more than 4, the remaining will be ignored. > > -- > Cordially, > Noufal > http://nibrahim.net.in > _______________________________________________ > BangPypers mailing list > BangPypers@python.org > http://mail.python.org/mailman/listinfo/bangpypers > _______________________________________________ BangPypers mailing list BangPypers@python.org http://mail.python.org/mailman/listinfo/bangpypers