On 26 August 2013 14:49, Neil Cerutti <ne...@norwich.edu> wrote: > On 2013-08-25, sahil301...@gmail.com <sahil301...@gmail.com> wrote: >> >> eg. my input is ['1', ' ', 'asdasd231231', '1213asasd', '43242'] >> I want it to be interpreted as: >> [1, [None], [None], [None], 43242] >> >> NOTE: NO INBUILT FUNCTION BE USED. > > Impossible. I think.
class BoilerplateToStopCheating: def __init__(self): """Factor things out to prevent cheating.""" self.digit_to_number = {"0":0, "1":1, "2":2, "3":3, "4":4, "5":5, "6":6, "7":7, "8":8, "9":9} def __call__(self, items): def fudging(): """More cheat-fudging.""" for item in items: try: as_number = 0 for char in item: as_number *= 10 as_number += self.digit_to_number[char] yield as_number except KeyError: yield [None] [*z] = fudging() return z converter = BoilerplateToStopCheating() # Can't use "print"... # Erm... converter(['1', ' ', 'asdasd231231', '1213asasd', '43242']) # Output: [1, [None], [None], [None], 43242] -- http://mail.python.org/mailman/listinfo/python-list