From: Ismaƫl Bouya Date: Thu, 25 Jan 2018 22:59:39 +0000 (+0100) Subject: Return correct values and fix isinstance use X-Git-Tag: v0.1~24 X-Git-Url: https://git.immae.eu/?a=commitdiff_plain;h=77f8a3789e293ece45946abd7ea3acffdf6add82;p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FCryptoportfolio%2FTrader.git Return correct values and fix isinstance use --- diff --git a/portfolio.py b/portfolio.py index 9f82d88..1fe56b5 100644 --- a/portfolio.py +++ b/portfolio.py @@ -26,7 +26,7 @@ class Portfolio: try: r = http.request("GET", cls.URL) except Exception: - return + return None try: cls.data = json.loads(r.data, parse_int=D, @@ -48,7 +48,7 @@ class Portfolio: def clean_weights(i): def clean_weights_(h): - if type(h[1][i]) == str: + if isinstance(h[1][i], str): return [h[0], h[1][i]] else: return [h[0], int(h[1][i] * 10000)] @@ -125,7 +125,7 @@ class Amount: return Amount(self.currency, self.value - other.value) def __mul__(self, value): - if type(value) != int and type(value) != float and type(value) != D: + if not isinstance(value, (int, float, D)): raise TypeError("Amount may only be multiplied by numbers") return Amount(self.currency, self.value * value) @@ -133,7 +133,7 @@ class Amount: return self.__mul__(value) def __floordiv__(self, value): - if type(value) != int and type(value) != float and type(value) != D: + if not isinstance(value, (int, float, D)): raise TypeError("Amount may only be multiplied by integers") return Amount(self.currency, self.value / value) @@ -411,7 +411,7 @@ class Trade: @classmethod def compute_value(cls, ticker, action, compute_value="default"): - if type(compute_value) == str: + if isinstance(compute_value, str): compute_value = Computation.computations[compute_value] return compute_value(ticker, action)