diff --git a/polynomial.py b/polynomial.py index 235facc209afac728561d0d7a5aad07960d952f1..c2ccbb8de9c6299974773aedc6a16e086de4d17e 100644 --- a/polynomial.py +++ b/polynomial.py @@ -60,20 +60,10 @@ class Polynomial: a = list(self.value) b = list(other.value) - a_count = len(a) - b_count = len(b) - if a_count > b_count: - diff = a_count - b_count - for x in range(diff): - b.append(0) - else: - diff = b_count - a_count - for x in range(diff): - a.append(0) - - c = [0] * len(a) - for x in range(len(a)): - c[x] = a[x] + b[x] + c = [] + # itertools pad 0 to the lowest list + for (a, b) in itertools.zip_longest(a, b, fillvalue=0): + c.append(a + b) return Polynomial(tuple(c))