diff --git a/jedi/evaluate/__init__.py b/jedi/evaluate/__init__.py index 6d0db5e9..ea75bbbe 100644 --- a/jedi/evaluate/__init__.py +++ b/jedi/evaluate/__init__.py @@ -220,8 +220,9 @@ class Evaluator(object): else: c = atom.children # Parentheses without commas are not tuples. - if c[0] == '(' and not (pr.is_node(c[1], 'testlist_comp') - and len(c[1].children) > 1): + if c[0] == '(' and not len(c) == 2 \ + and not(pr.is_node(c[1], 'testlist_comp') + and len(c[1].children) > 1): return self.eval_element(c[1]) try: comp_for = c[1].children[1] diff --git a/jedi/evaluate/iterable.py b/jedi/evaluate/iterable.py index 28375f06..f7218531 100644 --- a/jedi/evaluate/iterable.py +++ b/jedi/evaluate/iterable.py @@ -240,7 +240,7 @@ class Array(IterableWrapper): It returns e.g. for a list: append, pop, ... """ # `array.type` is a string with the type, e.g. 'list'. - scope = self._evaluator.find_types(compiled.builtin, self._array.type)[0] + scope = self._evaluator.find_types(compiled.builtin, self.type)[0] scope = self._evaluator.execute(scope)[0] # builtins only have one class from jedi.evaluate.representation import get_instance_el for _, names in scope.scope_names_generator():