On 9 December 2013 08:08, Rafael Knuth <rafael.kn...@gmail.com> wrote: > Hej there, > > I wrote a program that converts an integer into a digit sum: > > def DigitSum(YourNumber): > DigitList = [] > YourNumber = str(YourNumber) > for i in YourNumber: > DigitList.append(int(i)) > print(sum(DigitList)) > > DigitSum(55) > >>>> > 10 > > It actually works but I was wondering if that's the only way to solve > the task of converting an integer into a digit sum? I learned from > past conversations on this mailing list that often times there is a > better, more elegant and shorter way to write a program, and I was > wondering if that's the case here.
I don't know if everyone would consider this more elegant but it's certainly shorter: >>> def DigitSum(YourNumber): ... return sum(map(int, YourNumber)) ... >>> DigitSum('55') 10 Oscar _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor